反爬虫策略的应对方法汇总

在这里插入图片描述

现在越来越多的工作需要用到爬虫程序,但是同时也有很多人会通过爬虫程序恶意竞争,因此为了能够保护自己的正当权益,各种反爬虫程序被研发利用起来,所以很多时候,在进行爬虫工作的时候首要面对的就是爬虫和反爬虫的拉锯战,这里就说一下常见的防爬虫策略和应对方法。

1、从用户请求的Headers反爬虫,这一种可以说是比较常见的反爬虫策略。现在很多网站都会对Headers的User-Agent进行检测,还有一部分网站会对Referer进行检测(一些资源网站的防盗链就是检测Referer)。如果遇到了这类反爬虫程序,可以直接在爬虫中添加Headers,将浏览器的User-Agent复制到爬虫的Headers中;或者将Referer值修改为目标网站域名。对于检测Headers的反爬虫,在爬虫中修改或者添加Headers就能很好的绕过。

2、通过检测一段时间之内用户的访问次数,例如同一IP短时间内多次访问同一页面,或者同一账户短时间内多次进行相同操作。在这种情况下,为了防止受到恶意攻击,大多数网站就会禁止你的访问,如果遇到这种防爬机制,使用HTTP代理ip就可以解决。当然,可以专门写一个爬虫程序,采集网上的公开代理ip资源,然后自己存起来,毕竟这种情况很可能会在爬虫工作中经常遇到;但是网上公开的代理ip质量不能保证,所以这个时候可以买一些高质量的代理ip,比如说芝麻HTTP代理就可以提供高质量的代理ip。有了大量代理ip后可以每请求几次更换一个ip,这在requests或者urllib2中很容易做到,这样就能很容易的绕过反爬虫。也可以在每次请求后随机间隔几秒再进行下一次请求。有些有逻辑漏洞的网站,可以通过请求几次,退出登录,重新登录,继续请求来绕过同一账号短时间内不能多次进行相同请求的限制。
文章部分内容源于网络,联系侵删*

猜你喜欢

转载自blog.csdn.net/weixin_55586636/article/details/114126503
今日推荐