Python网络爬虫之urllib2的使用细节与抓站技巧

某些网站反感爬虫的到访,于是对爬虫一律拒绝请求,这时候我们需要伪装成浏览器,这可以通过修改http包中的header来实现

一、伪装成浏览器访问+表单data的处理

Python网络爬虫之urllib2的使用细节与抓站技巧_第1张图片
示例1

二、获取访问Cookie的值

Python网络爬虫之urllib2的使用细节与抓站技巧_第2张图片
示例2

三、Proxy的设置及Timeout 设置

urllib2 默认会使用环境变量 http_proxy 来设置 HTTP Proxy。如果想在程序中明确控制 Proxy 而不受环境变量的影响,那么可以使用如下代理操作

Python网络爬虫之urllib2的使用细节与抓站技巧_第3张图片
示例3

四、使用 urllib2时打开Debug Log模式

debug Log 的打开,这样收发包的内容就会在屏幕上打印出来,方便调试,有时可以省去抓包的工作,这样就可以看到传输的数据包内容了。

Python网络爬虫之urllib2的使用细节与抓站技巧_第4张图片
示例4

五、对付"反盗链"

某些站点有所谓的反盗链设置,其实说穿了很简单,就是检查你发送请求的header里面,referer站点是不是他自己,所以我们只需要像把headers的referer改成该网站即可,以cnbeta为例:headers是一个dict数据结构,你可以放入任何想要的header,来做一些伪装。例如,有些网站喜欢读取header中的X-Forwarded-For来看看人家的真实IP,可以直接把X-Forwarde-For改了

Python网络爬虫之urllib2的使用细节与抓站技巧_第5张图片
示例5

资料来源:感谢汪童鞋的分享

你可能感兴趣的:(Python网络爬虫之urllib2的使用细节与抓站技巧)