qq:800819103
在线客服,实时响应qq群
在线客服,实时响应客服电话
13318873961如何使用代理IP来解决爬虫被封的问题?在大量爬取某个网站时,突然被该网站封了IP,再也爬不动了。研究其反爬虫策略时发现,当单个IP访问次数达到某个阈值时,将会限制当天访问。爬虫不能停,工作任务必须按时完成,怎么办呢?同事告知:使用代理IP来解决。
在同事的介绍下,买了黑洞代理IP的一手私密代理IP,接下来就是使用代理IP来继续爬虫工作了。通过python官方文档得知,可用urllib库的request方法中的ProxyHandler方法,build_opener方法,install_opener方法来使用代理IP。
官方文档很官方,有点难以理解,下面是部分关键文档,一起来看下:
class urllib.request.ProxyHandler(proxies=None)
Cause requests to go through a proxy. If proxies is given, it must be a dictionary mapping protocol names to URLs of proxies.(通过代理方法请求,如果给定一个代理,它必须是一个字典映射,key为协议,value为URLs或者代理ip。)
urllib.request.build_opener([handler, ...])
Return an OpenerDirector instance, which chains the handlers in the order given.(build_opener方法返回一个链接着给定顺序的handler的OpenerDirector实例。)
urllib.request.install_opener(opener)
Install an OpenerDirector instance as the default global opener.(install_opener方法安装OpenerDirector实例作为默认的全局opener。)
是不是云里雾里的,如果这样理顺下,就会发现其实很简单:
1、将代理IP及其协议载入ProxyHandler赋给一个opener_support变量;
2、将opener_support载入build_opener方法,创建opener;
3、安装opener。
具体代码如下:
from urllib import request
def ProxySpider(url, proxy_ip, header):
opener_support = request.ProxyHandler({'http': proxy_ip})
opener = request.build_opener(opener_support)
request.install_opener(opener)
req = request.Request(url, headers=header)
rsp = request.urlopen(req).read()
return rsp
有了代理IP,又学会了使用代理IP来做爬虫,这下可以不用担心被目标网站限制了,爬虫工作效率直线上线,按时完成任务不在话下。
相关文章内容简介
1 如何使用代理IP来解决爬虫被封的问题?
如何使用代理IP来解决爬虫被封的问题?在大量爬取某个网站时,突然被该网站封了IP,再也爬不动了。研究其反爬虫策略时发现,当单个IP访问次数达到某个阈值时,将会限制当天访问。爬虫不能停,工作任务必须按时完成,怎么办呢?同事告知:使用代理IP来解决。 在同事的介绍下,买了黑洞代理IP的一手私密代理IP,接下来就是使用代理IP来继续爬... [阅读全文]
最新标签
推荐阅读
27
2019-03
采用代理ip工具访问网站慢?
当大家在用换ip软件时,经常碰上这类问题,就是比如大家在浏览国外域名时,通常是很慢,并且有时候不一定能连上。为什么会出现这样的问题,是由于在浏览某个网站时,假若是国内的网站
11
2018-10
电脑更换IP地址的方法有哪些?
本教程将给大家分享一下更换自己电脑的IP地址的方法,很多人在上网的时候需要换IP,可能有些同学不知道如何去更换自己电脑的IP,于是今天就来讲解一下改变电脑IP的教程。
22
2019-05
在国内如何购买https代理ip?
其实在国内的https代理ip平台的市场上,你们只要稍加了解就会发现一个共同的问题,那就是收费非常高,因此平台并不适合大众使用。那究竟有没有解决这个问题的方法呢?方法自然有,只需
14
2019-07
用代理IP后爬虫遇到问题如何解决?
很多进行爬虫业务的人员发现,使用了稳定的代理IP,也控制访问速度和次数,发现爬虫工作有时还会遇到各种问题你,工作总是无法顺利进行。那么,用代理IP后爬虫遇到问题如何解决呢?
热门文章