1. 再a方法中新建了个opener,使用了代理:
proxydict = {}
proxydict['http'] = "http://%s:%s"%(ip,port)
#print proxydict
proxy_handler = urllib2.ProxyHandler(proxydict)
opener = urllib2.build_opener(proxy_handler)
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
urllib2.install_opener(opener)
urllib2.urlopen(.......)
2. 又定义了b方法,
不适用proxy来访问,直接urlopen。
response = urllib2.urlopen(。。。。。。。。。
这个时候有可能会导致b方法再被运行的时候使用的是a方法中的opener,导致是使用代理访问的,
这个原因我没有找到,不过这样有可能会产生这样的问题,当我将b方法中的改为下面这样就没有问题了:(生成个空的opener)
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
urllib2.install_opener(opener)
response = urllib2.urlopen(urls)