当使用一台主机多次访问某个服务器时,服务器可能会认为主机属于恶意攻击,很可能会封了主机ip。此时的解决办法可以用代理服务器。
主机可以发送不同的请求给不同的代理服务器,代理服务器再去向目标服务器请求。这样就可以解决ip限制的问题。
#使用代理服务器爬取网页---可以很好的解决ip限制的问题
import urllib.request
def use_proxy(url,proxy_addr):
proxy = urllib.request.ProxyHandler({'http':proxy_addr})
opener = urllib.request.build_opener(proxy,urllib.request.HTTPHandler)
urllib.request.install_opener(opener)
data = urllib.request.urlopen(url).read().decode('utf-8','ignore')
return data
proxy_addr = "122.193.245.53:9999" #可以从https://www.xicidaili.com/ 获取免费代理服务器
url = "http://www.baidu.com"
data = use_proxy(url,proxy_addr)
print(len(data))