某些网站反感爬虫的到访,于是对爬虫一律拒绝请求,这时候我们需要伪装成浏览器,这可以通过修改http包中的header来实现
一、伪装成浏览器访问+表单data的处理
![](https://img.haomeiwen.com/i6424670/f0479937365a295d.png)
二、获取访问Cookie的值
![](https://img.haomeiwen.com/i6424670/f43e58d083a77367.png)
三、Proxy的设置及Timeout 设置
urllib2 默认会使用环境变量 http_proxy 来设置 HTTP Proxy。如果想在程序中明确控制 Proxy 而不受环境变量的影响,那么可以使用如下代理操作
![](https://img.haomeiwen.com/i6424670/bc2420cae34076c6.png)
四、使用 urllib2时打开Debug Log模式
debug Log 的打开,这样收发包的内容就会在屏幕上打印出来,方便调试,有时可以省去抓包的工作,这样就可以看到传输的数据包内容了。
![](https://img.haomeiwen.com/i6424670/884a0757d46c6e41.png)
五、对付"反盗链"
某些站点有所谓的反盗链设置,其实说穿了很简单,就是检查你发送请求的header里面,referer站点是不是他自己,所以我们只需要像把headers的referer改成该网站即可,以cnbeta为例:headers是一个dict数据结构,你可以放入任何想要的header,来做一些伪装。例如,有些网站喜欢读取header中的X-Forwarded-For来看看人家的真实IP,可以直接把X-Forwarde-For改了
![](https://img.haomeiwen.com/i6424670/71a1e2927930bba2.png)
资料来源:感谢汪童鞋的分享
网友评论