Python爬虫反爬手段讲解
反爬方式的种类
1、判断请求头来进行反爬
这是很早期的网站进行的反爬方式
- User-Agent 用户代理
- referer 请求来自哪里
- cookie 也可以用来做访问凭证
解决办法:请求头里面添加对应的参数(复制浏览器里面的数据)
2、根据用户行为来进行反爬
- 请求频率过高,服务器设置规定时间之内的请求阈值
解决办法:降低请求频率或者使用代理(IP代理) - 网页中设置一些陷阱(正常用户访问不到但是爬虫可以访问到)
解决办法:分析网页,避开这些特殊陷阱 - 请求间隔太短,返回相同的数据
解决办法:增加请求间隔
3、js加密
反爬方式中较为难处理的一类。
js加密的原理:服务器响应给浏览器的js文件,可以动态的生成一些加密参数,浏览器会根据js的计算 得到这些参数,在请求中带入进来,如果请求中没有这些参数,那么服务器就任务请求无效。