很多网站都会检测某一段时间某个IP的访问次数,如果同一个IP访问过于频繁,那么该网站就会禁止来自该IP的访问,针对这种情况,可以使用代理服务器,每隔一段时间换一个马甲。“他强任他强,劳资会变翔”哈哈哈。
免费的开放代理获取无成本,我们可以收集这些免费代理,测试后如果可以用,用在爬虫上。
免费短期代理网站举例:
西刺免费代理IP
快代理免费代理
Proxy360代理
全网代理IP
名词解释:
免费短期代理网站分高匿和透明
【高匿】:代表服务器追踪不到你原来的IP;
【透明】:代表服务器可以追踪到你的代理IP和原来的IP;
类型表示支持的类型:HTTP或者HTTPS
【存活的时间】:表示在这个期间可用
2.设置代理服务器urllib.request中通过ProxyHandler来设置使用代理服务器,下面代码说明如何使用自定义opener来使用代理:
例子1:单个代理IP
1 import urllib.request 2 3 # 构建两个代理Handler,一个有代理IP,一个没有 4 httpproxy_handler = urllib.request.ProxyHandler({"http": "211.141.111.114:61395"}) 5 nullproxy_handler = urllib.request.ProxyHandler({}) 6 proxy_switch = True # 定义一个代理开关 7 8 # 通过urllib.request.build_opener() 方法创建自定义opener对象 9 # 根据代理开关是否打开,使用不同的代理模式 10 if proxy_switch: 11 opener = urllib.request.build_opener(httpproxy_handler) 12 else: 13 opener = urllib.request.build_opener(nullproxy_handler) 14 15 request = urllib.request.Request("") 16 response = opener.open(request) 17 print(response.read())