我想在请求失败时使用/不使用代理交换,我编写了下面的代码。 但我发现如果enable_proxy为true且请求失败,那么下次尝试使用urllib2.urlopen也会使用代理,为什么?
opener = urllib2.build_opener(proxy)
while read_succ == False
read_succ = True
f = None
try:
if enable_proxy == True:
f = opener.open(req, timeout=cur_timeout)
else:
f = urllib2.urlopen(url=req, timeout=cur_timeout)
content = f.read()
except Exception,e:
read_succ = False
enable_proxy = not enable_proxy
finally:
if f:
f.close()