python的httplib,urllib和urllib2的区别及用

python的httplib,urllib和urllib2的区别及用,第1张

httplib实现了HTTP和HTTPS的客户端协议,一般不直接使用,在python更高层的封装模块中(urllib,urllib2)使用了它的http实现。

urllib 通常用来发送简单的get请求,可以对参数进行encode。不能设置请求header。

urllib2可以自定义请求header,比如设置UserAgent、模拟登录。但是不能encode参数。可以和urllib配合使用。

整体来说,urllib2是urllib的增强,但是urllib中有urllib2中所没有的函数。

urllib2可以用urllib2.openurl中设置Request参数,来修改Header头。如果访问一个网站,想更改UserAgent(可以伪装的浏览器),就要用urllib2.

urllib支持设置编码的函数,urllib.urlencode,在模拟登陆的时候,经常要post编码之后的参数,所以要想不使用第三方库完成模拟登录,就需要使用urllib。

urllib一般和urllib2一起搭配使用。

1、放慢爬取速度,减小对于目标网站造成的压力。但是这样会减少单位时间类的爬取量。

第二种方法是通过设置IP等手段,突破反爬虫机制继续高频率爬取。网站的反爬机制会检查来访的IP地址,为了防止IP被封,这时就可以使用HTTP,来切换不同的IP爬取内容。使用代理IP简单的来讲就是让代理服务器去帮我们得到网页内容,然后再转发回我们的电脑。要选择高匿的ip,IPIDEA提供高匿稳定的IP同时更注重用户隐私的保护,保障用户的信息安全。

2、这样目标网站既不知道我们使用代理,更不会知道我们真实的IP地址。

3、建立IP池,池子尽可能的大,且不同IP均匀轮换。

如果你需要大量爬去数据,建议你使用HTTP代理IP,在IP被封掉之前或者封掉之后迅速换掉该IP,这里有个使用的技巧是循环使用,在一个IP没有被封之前,就换掉,过一会再换回来。这样就可以使用相对较少的IP进行大量访问。以上就是关于爬虫IP地址受限问题的相关介绍。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11317273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存