详情

全站展示位

一日一技:Selenium如何接管已经运行的Chrome浏览器? | 谢乾坤 | Kingname

在昨天的文章一日一技:爬虫模拟浏览器如何避免重复登录?中,我讲到了如何使用Puppeteer接管已经运行的Chrome。今天我们来讲讲使用Selenium如何实现这个功能。。。。

推荐

标签: 正则表达式 | 谢乾坤 | Kingname

高级数据挖掘工程师,《Python 爬虫开发 从入门到实战》、《左手 MongoDB 右手 Redis——从入门到商业实战》作者。 微软最有价值专家 MVP,Python, Scrapy, MongoDB, Redis, Pandas, Golang。

标签: MongoDB | 谢乾坤 | Kingname

高级数据挖掘工程师,《Python 爬虫开发 从入门到实战》、《左手 MongoDB 右手 Redis——从入门到商业实战》作者。 微软最有价值专家 MVP,Python, Scrapy, MongoDB, Redis, Pandas, Golang。

只要5分钟,创建一个隧道代理 | 谢乾坤 | Kingname

什么是隧道代理?我们来看下面这张截图: 所谓隧道代理,就是一个能帮你自动更换代理 IP 的代理服务。在你的代码里面,你只需要把一个入口代理地址写死,然后正常发起请求,而目标服务器接收到的请求,每一次都是不同的代理地址。 在某代理网站上,隧道代理50并发每秒的价格是4000元/月: 而常规的,先请求接口拿到一批代理 IP,再选一个发起请求的原始代理服务器,一个月价格才600多元: 所以,如果我

4种方法解决MongoDB游标超时的问题 | 谢乾坤 | Kingname

当我们使用Python从MongoDB里面读取数据时,可能会这样写代码: 123456import pymongohandler = pymongo.MongoClient().db.colfor row in handler.find(): parse_data(row) 短短4行代码,读取MongoDB里面的每一行数据,然后传入parse_data做处理。处理完成以后再读取下一行。逻辑清

心灵鸡汤

  春秋时,宋国司城子罕清正廉洁,受人爱戴。有人得到一块宝玉,请人鉴定后拿去献给子罕,子罕拒不理解,说:“您以宝石为宝,而我以不贪为宝。

  如果我理解了您的玉,那我们俩就都失去了自我的宝物,倒不如我们各有其宝呢

列表展示

主站展示位

标签: Scrapy | 谢乾坤 | Kingname

高级数据挖掘工程师,《Python 爬虫开发 从入门到实战》、《左手 MongoDB 右手 Redis——从入门到商业实战》作者。 微软最有价值专家 MVP,Python, Scrapy, MongoDB, Redis, Pandas, Golang。

标签: Log | 谢乾坤 | Kingname

高级数据挖掘工程师,《Python 爬虫开发 从入门到实战》、《左手 MongoDB 右手 Redis——从入门到商业实战》作者。 微软最有价值专家 MVP,Python, Scrapy, MongoDB, Redis, Pandas, Golang。

一日一技:Python工具脚本如何调用外层模块 | 谢乾坤 | Kingname

我三年前写过一篇文章:《小问题大隐患:如何正确设置 Python 项目的入口文件?》。讲到Python项目应该如何正确组织代码结构。入口文件应该在最外面,调用关系应该是从外向内调用。而不要学Java,从一个很深层的文件夹里面往外调用。 不过我在这篇文章的最后,也提到了一种例外情况,那就是工具脚本不受这个规则的限制。如下图所示。

一日一技:iOS下的开源免费消息推送服务 | 谢乾坤 | Kingname

我们在部署代码到线上以后,可能会需要在一些情况下给自己发报警通知。如果是公司的线上业务,一般会有公司内部的各种通知工具。 但如果是自己的个人服务,我们应该怎么推送消息呢?有些同学可能使用过叮叮或者飞书机器人,但是这些机器人要发送通知还需要拉个群,稍微有点麻烦。有些同学可能使用的是Telegram,但使用它需要梯子也不太方便。 如果你的手机是iPhone,那么你可以使用一个开源免费超级轻量级的消息推

一日一技:警告但不禁止,遗留代码的优化策略 | 谢乾坤 | Kingname

在之前的多篇文章中,我都反复告诫大家,不要滥用字典来传大量数据。因为当你的函数收到一个字典的时候,你根本不知道这个字典里面有哪些Key,你必须有一层一层往上看,找到所有尝试往字典里面添加新Key的地方,你才能知道它总共有哪些Key。 但是,在正常公司项目中,我们可能会需要维护一些历史遗留代码。代码规模大,函数调用层级非常深。并且之前的人已经使用字典来传递了大量的数据。 短时间内,我们没有办法直接把

一日一测:Bright Data的海外代理测试 | 谢乾坤 | Kingname

上周的公众号文章提到了Bright Data提供的代理服务。没想到他们的运营同学竟然找上了门,问我能不能帮他们做一个评测。 我之前使用Bright Data的代理,是因为突然有一天我的HuggingFace爬虫挂了。比较奇怪的是,这个爬虫在我电脑上始终正常运行,但一放到服务器上就请求失败。联想到HuggingFace被封了,而这个爬虫之前一直使用的国内代理供应商,那么原因就很明显了。因为我的电脑是

一日一技:自动提取任意信息的通用爬虫 | 谢乾坤 | Kingname

使用过GNE的同学都知道,GNE虽然是通用爬虫,但只是文章类页面的通用爬虫。如果一个页面不是文章页,那么就无能为力了。 随着ChatGPT引领的大语言模型时代到来,这个问题基本上已经不是问题了。我们先来看一个效果。首先打开Linkedin,随便找一个招聘的岗位,如下图所示: 然后,我们直接使用GPT从这里提取信息:

一日一技:从Pandas DataFrame两个小技巧 | 谢乾坤 | Kingname

今天我从网上下载了一批数据。这些数据是Excel格式,我需要把他们转移到MySQL中。这是一个非常简单的需求。

一日一技:如何同时使用多个GPT的API Key? | 谢乾坤 | Kingname

相信很多同学或多或少都在Python中使用过GPT API,通过Python安装openai库,来调用GPT模型。 OpenAI官方文档中给出了一个示例,如下图所示: 如果你只有一个API账号,那么你可能不觉得这样写有什么问题。但如果你想同时使用两个账号怎么办?

老板让我加班怎么办?GPTs创建机器人实战 | 谢乾坤 | Kingname

前两天的OpenAI发布会,相信很多同学看完以后都热血沸腾。我之前一直使用的是ChatGPT的免费版本,看完这个发布会以后,立刻就充值了ChatGPT Plus,来试一试这些高级功能。 这两天GPTs功能上线了,短短三天时间,全球网友创建了几千个GPT机器人。我今天也来搞一个玩玩。 使用GPTs创建机器人非常简单,不需要懂任何编程知识,甚至不需要懂Prompt工程,你只需要跟着他的向导,一步一步描

标签: PDF | 谢乾坤 | Kingname

高级数据挖掘工程师,《Python 爬虫开发 从入门到实战》、《左手 MongoDB 右手 Redis——从入门到商业实战》作者。 微软最有价值专家 MVP,Python, Scrapy, MongoDB, Redis, Pandas, Golang。

一日一技:爬虫如何解析JavaScript Object? | 谢乾坤 | Kingname

我们在开发爬虫的过程中,经常发现有一些网站,会直接把数据放到HTML中的<script>标签里面。这些数据长得有点像JSON,但又有差异,如下图所示: 这种格式,我们叫做JavaScript Object。长得很像Python的字典,又很像是JSON。但是这个格式在Python里面,无论直接当字典解析,还是当JSON解析,都会报错,如下图所示: 遇到这种情况,有同学准备使用正则表达

一日一技:iOS抓包最简单方案 | 谢乾坤 | Kingname

写过爬虫的同学都知道,当我们想对App或者小程序进行抓包时,最常用的工具是Charles、Fiddler或者MimtProxy。但这些软件用起来非常复杂。特别是当你花了一两个小时把这些软件搞定的时候,别人只用了15分钟就已经手动把需要的数据抄写完成了。 我的需求如果你不是专业的爬虫开发者,那么大多数时候你的抓包需求都是很小的需求,手动操作也不是不能。这种时候,我们最需要的是一种简单快捷的,毫不费力

一日一技:Requests被网站识别怎么办? | 谢乾坤 | Kingname

现在有很多网站,已经能够通过JA3或者其他指纹信息,来识别你的请求是不是Requests发起的。这种情况下,你无论怎么改Headers还是代理,都没有任何意义。 我之前写过一篇文章:Python如何突破JA3,但方法非常复杂,很多初学者表示上手有难度。那么今天我来一个更简单的方法,只需要修改两行代码。并且不仅能过JA3,还能过Akamai。

一日一技:从PDF完美提取表格 | 谢乾坤 | Kingname

在之前很长一段时间,从PDF文件中提取表格都是一个老大难的问题。无论你使用的是PyPDF2还是其他什么第三方库,提取出来的表格都会变成纯文本,难以二次利用。 但现在好消息来了,专业处理PDF的第三方库PyMuPDF升级到了1.23.0,已经支持完美提取PDF中的表格了。还可以把表格转换为Pandas的DataFrame供你分析。

一日一技:如何对Python代码进行混淆 | 谢乾坤 | Kingname

目前市面上没有任何方法能够完全避免你的程序被人反编译。即便是3A游戏大作,发布出来没多久也会被人破解。现在只能做到增大反编译的难度,让程序相对无法那么快被破解。 我们知道,Python代码默认是公开的。当你要把一个Python项目给别人运行的时候,一般来说别人就能看到你的全部源代码。我们可以使用Cython、Nuitka对代码进行打包,编译成.so文件、.dll文件或者是可执行文件,从而在一定程度

一日一技:Prompt逆向工程,破解小红书文案生成器 | 谢乾坤 | Kingname

关注我公众号的很多同学都会写爬虫。但如果想把爬虫写得好,那一定要掌握一些逆向技术,对网页的JavaScript和安卓App进行逆向,从而突破签名或者绕过反爬虫限制。 最近半年,大语言模型异军突起,越来越多的公司基于GPT3.5、GPT-4或者其他大语言模型实现了各种高级功能。在使用大语言模型时,Prompt写得好不好,决定了最终的产出好不好。甚至因此产生了一门新的学问,叫做Prompt Engin

轻声低语,藏在光芒下的语音转文字模型Whisper | 谢乾坤 | Kingname

ChatGPT的模型gpt-3.5-turbo发布当天,OpenAI还开源了一个语音转文本的模型:Whisper。但由于ChatGPT本身太过于耀眼,很多人都忽略了Whisper的存在。 我当时也是这样,我一度以为,Whisper也是一个API,需要发送POST请求到OpenAI的服务器上,然后它传回识别的结果。所以我很长一段时间一直都没有试用过这个模型。 直到前几天,我看到有人在少数派上面发了一

标签: 人工智能 | 谢乾坤 | Kingname

高级数据挖掘工程师,《Python 爬虫开发 从入门到实战》、《左手 MongoDB 右手 Redis——从入门到商业实战》作者。 微软最有价值专家 MVP,Python, Scrapy, MongoDB, Redis, Pandas, Golang。

一日一技:【最新】再次突破CloudFlare五秒盾付费版 | 谢乾坤 | Kingname

去年我写了一篇文章:一日一技:如何捅穿Cloud Flare的5秒盾 ,这篇文章使用的第三方库『cloudscraper』可以绕过免费版的五秒盾。但遇到付费版就无能为力了。

博客寄语:

    这个博客已经连续更新超过8年。

实时播报:

博客号-学习成长

相信每一分耕耘都有每一分收获,致力帮助博客主所创作的博客能更快的被收录! 如果有其它需求,可联系下方邮箱。