ProxyHandler实现代理

ProxyHandler实现代理

ProxyHandler处理器

很多网站会检测某一段时间某IP的访问次数,如果访问次数多的不像正常人,它会禁止这个IP的访问,所以我们可以设置一些代理服务器,每隔一段时间换一个代理,就算IP被禁止,依然可以换个IP继续爬取。

urllib通过ProxyHandler来设置使用代理服务器,下面代码说明如何使用自定义opener来使用代理:

1
2
3
4
5
6
7
8
from urllib import request

url = "http://httpbin.org/ip"
handler = request.ProxyHandler({"http": "221.6.201.18:9999"})
opener = request.build_opener(handler)

resp = opener.open(url)
print(resp.read())