python中绕过反爬虫的方法总结
小妮浅浅 人气:0我们在登山的途中,有不同的路线可以到达终点。因为选择的路线不同,上山的难度也有区别。就像最近几天教大家获取数据的时候,断断续续的讲过header、地址ip等一些的方法。具体的爬取方法相信大家已经掌握住,本篇小编主要是给大家进行应对反爬虫方法的一个梳理,在进行方法回顾的同时查漏补缺,建立系统的爬虫知识框架。
首先分析要爬的网站,本质是一个信息查询系统,提供了搜索页面。例如我想获取某个case,需要利用这个case的id或者name字段,才能搜索到这个case的页面。
出于对安全的考虑,有些网站会做一些反爬的措施,例如之前讲到的需要判断user-angent和cookies,或者判断请求的ip是否在短时间内多次访问。该网站用的是知道创宇的安全服务,频繁访问会提示ip行为不正常。
浏览器本质也是一个应用程序,只要ip不被封,既然可以通过浏览器访问,那么我们自己写程序来请求也是应该没有问题的。
一些常见的绕过反爬虫的措施有:
- 构造消息头:如上所说的user-angent和cookies都包含在消息头当中。
- 延长请求间隔:如果快速频繁的发送请求,会大量抢占服务器资源,一般这种情况下很容易被网站的安全措施检测出来并且封掉ip。所以适当的延长请求间隔,例如随机隔2-5秒不等再发送下一次请求。
- 使用代理ip,解决ip检测问题。
当然常见的反爬虫方法也不止以上的这些,这里只罗列出这常用的三种方法,有概念模糊的可以去往期的文章翻阅,其他的绕过反爬虫方法
加载全部内容