摄影揭秘:产品经理如何半价吃到平时要排很久队的餐厅

2024-06-26
来源:网络整理

摄影师:产品经理

在通常排长队的餐厅用餐,价格几乎减半

有个词叫“行军爬虫”,就是指有些同学在毕业前需要为毕业论文收集数据,于是随便在网上找几个教程,学点正则表达式,就开始写爬虫疯狂地从网上爬数据。这些爬虫几乎不做任何隐藏自己的事情,不换IP,不设置,不限速,很容易被有防爬的网站封杀,也容易给没有防爬的小网站造成流量压力。

后来他们看了一些文章,才知道需要用代理IP,然后修改一下。所以,他们其实只是设置了这一项,并没有设置其他的。你指出来,他们还是会反驳:你看我这样就能爬取到数据了,里面的其他项都没用。

事实真是如此吗?

我们来做个实验,首先访问这个网站,显示你当前的状态,运行效果如下图所示:

然后使用不设置请求的URL,运行效果如下图所示:

最后我们随便设置一个看看效果:

可以看出,只设置一个和用浏览器访问还是有很多区别的,缺少很多项,网站只要检测这些缺少的项,就能判断你是用程序还是浏览器发起请求。

回到微信网页版的问题,很多人使用 wxpy 或者其他第三方库来控制自己的微信账号,实现了很多自动化操作,但不久之后就反馈自己被限制登录微信网页版,认为自己的行为被微信发现了,比如一秒钟发几十条消息,或者同时回复几个人的消息。

但是我想说的是,你们太高估自己了,微信没必要那么费劲去找你们,直接查就可以了。

我们看一下wxpy的源码,其中涉及到网络请求:

微信在线登录_登录在线微信怎么登录_登录在线微信会封号吗

wxpy基于二次开发,通过实现登录功能,我们先看看网络请求从哪里发起的:

self.core.s就是其中之一,如下图所示:

看到了吗?他们只放了两个库,其他字段都没放。所以你一登录微信,微信就知道你不是用浏览器登录的!

所以那些使用wxpy或者被限制登录网页版微信的朋友,不要怀疑,你们就是被这两个库害的,这两个库里跟网络请求相关的代码,都是学了两三天爬虫的人写的。

如果你使用这两个库,你就是在让你的微信账号自取灭亡。

不只是这两个库,我们来看看很多人用的弹幕包,更夸张,在获取斗鱼直播信息的时候,直接使用请求URL,甚至都不设置,如下图所示:

这纯粹是一种自杀行为。

目前大型网站的爬虫行为反制团队一般都是将爬虫检测和爬虫封禁分开,因为反爬虫策略多了,难免会出现误伤的情况,为了将误伤率降到最低,在检查爬虫时会对请求的可疑程度进行打分,当你有疑似爬虫行为时,你的请求会被赋予一定分数,有的行为分数高,有的行为分数低,当你的总分数达到一定程度时,就会调用封禁流程。

由于HTTP是无状态的,如果你要抓取的网站不需要登录,那么频繁更换IP也许对你有用(阿布云的代理池就是这样被污染的)。

但是对于需要登录的微信来说,你所有的可疑行为分数都会直接和你的账号挂钩。所以,一开始你用 wxpy 登录网页版微信可能没问题,这时候你的可疑分数还不够高。也许有些老旧的浏览器确实缺了不少项?但你已经在可疑名单上了。一旦你有其他可疑行为导致可疑分数不断上升,那么当微信 100% 确定你是用自动化程序登录网页版微信时,封禁你是理所当然的。

分享