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