详情

全站展示位

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

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

推荐

标签: 正则表达式 | 谢乾坤 | 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做处理。处理完成以后再读取下一行。逻辑清

心灵鸡汤

小故事、机会

  A在合资公司做白领,觉得自己满腔抱负没有得到上级的赏识,经常想:如果有一天能见到老总,有机会展示一下自己的才干就好了!!

  A的同事B,也有同样的想法,他更进一步,去打听老总上下班的时间,算好他大概会在何时进电梯,他也在这个时候去坐电梯,希望能遇到老总,有机会可以打个招呼。

  他们的同事C更进一步。他详细了解老总的奋斗历程,弄清老总毕业的学校,人际风格,关心的问题,精心设计了几句简单却有份量的开场白,在算好的时间去乘坐电梯,跟老总打过几次招呼后,终于有一天跟老总长谈了一次,不久就争取到了更好的职位。

  心得:愚者错失机会,智者善抓机会,成功者创造机会。机会只给准备好的人,这准备二字,并非说说而已。

列表展示

主站展示位

标签: LLM | 谢乾坤 | Kingname

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

标签: Next.js | 谢乾坤 | Kingname

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

一日一技:Scrapy最新版不兼容scrapy_redis的问题 | 谢乾坤 | Kingname

有不少同学在写爬虫时,会使用Scrapy + scrapy_redis实现分布式爬虫。不过scrapy_redis最近几年更新已经越来越少,有一种廉颇老矣的感觉。Scrapy的很多更新,scrapy_redis已经跟不上了。

一日一技:next.js如何正确处理跨域问题? | 谢乾坤 | Kingname

我以前一直使用Vue来写前端。去年下半年接手了一个基于React + Next.js的项目,于是顺带学习了一下Next.js。由于Next.js的特点,这个项目的前后端是放在一起的。一开始没什么问题,看了半天文档就上手了。 上周我们需要在另一个网页项目中,调用这个项目的后端接口,于是就需要处理跨域请求的问题。但我发现按照网上的方法,跨域问题依然存在。这个问题浪费了我不少时间,好在最后终于找到了原因

一日一技:不走常规路线,列表页1秒搞定 | 谢乾坤 | Kingname

最近遇到一个需求,需要抓取Docusaurus上面的全部文档。如下图所示: 抓文档的正文非常简单,使用GNE高级版,只要有URL直接就能抓取下来,如下图所示: 但现在的问题是,我怎么获取到每一篇文档的URL?

一日一技:如何同时在多个分支写代码? | 谢乾坤 | Kingname

当我们在维护公司项目时,可能会遇到这样的场景:我正在开发一个新功能,突然需要修一个Bug。 这个时候,有些同学是这样做的: 12345678git add .git commit -m 'WIP'git checkout -b 新的分支名...新的代码修改完成并push以后...git checkout 老分支...继续开发... 更有一些经验的同学,可能会这样写: 1234

一日一技:在Scrapy中如何拼接URL Query参数? | 谢乾坤 | Kingname

我们知道,在使用Requests发起GET请求时,可以通过params参数来传递URL参数,让Requests在背后帮你把URL拼接完整。例如下面这段代码: 12345678910111213# 实际需要请求的url参数为:#

GnePro:文章类通用爬虫接口 | 谢乾坤 | Kingname

GnePro是开源项目GNE的付费版,能够实现如下功能: 输入任意文章页面的URL,返回标题/作者/正文/发布时间/图片/面包屑等一系列信息 支持异步加载文章页提取 支持上传自定义的HTML代码提取正文 支持自动检测网页编码 支持自动提取网页全部URL 在8个国家13万个新闻类网站进行测试,准确率高达90%

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

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

助力大语言模型训练,无压力爬取六百亿网页 | 谢乾坤 | Kingname

ChatGPT一炮而红,让国内很多公司开始做大语言模型。然后他们很快就遇到了第一个问题,训练数据怎么来。有些公司去买数据,有些公司招聘爬虫工程师。但如果现在才开发爬虫,那恐怕已经来不及了。 即使爬虫工程师非常厉害,可以破解任意反爬虫机制,可以让爬虫跑满网络带宽,可是要训练出GPT-3这种规模的大语言模型,这个数据并不是一天两天就能爬完的。并且,有很多老网站的数据,早就被删除了,爬虫想爬也爬不到。

标签: PDF | 谢乾坤 | Kingname

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

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

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

标签: 抓包 | 谢乾坤 | Kingname

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

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

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

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

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

一日一技:方法不对,代码翻倍。Requests如何正确重试? | 谢乾坤 | Kingname

程序员是一个需要持续学习的群体,如果你发现你现在写的代码跟你5年前的代码没什么区别,说明你掉队了。 我们在做Python开发时,经常使用一些第三方库,这些库很多年来持续添加了新功能。但我发现很多同学在使用这些第三方库时,根本不会使用新的功能。他们的代码跟几年前没有任何区别。

一日一技:在LangChain中使用Azure OpenAI Embedding服务 | 谢乾坤 | Kingname

如果大家深入使用过ChatGPT的API,或者用过听说过AutoGPT,那么可能会知道,它背后所依赖的语言框架LangChain。LangChain能够让大语言模型具有访问互联网的能力,以及与其他各种API互动交互,甚至是执行系统命令的能力。 ChatGPT的prompt支持的Token数量是有限的,但是使用LangChain,能够很容易实现ChatPDF/ChatDoc的效果。即使一段

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

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

标签: LangChain | 谢乾坤 | Kingname

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

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

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

博客寄语:

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

实时播报:

博客号-学习成长

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