问题
I am using python urllib2
library and can see a strange and nasty problem.
Windows 7.
My code:
import urllib2 as url_request
opener = url_request.build_opener(url_request.ProxyHandler({'http': 'http://login:password@server:8080'}))
request = url_request.Request("http://localhost");
response = opener.open(request)
print response.read()
It works perfectly well, but when I change localhost
to 127.0.0.1
this error happens:
HTTPError: HTTP Error 502: Proxy Error ( Forefront TMG denied the specified Uniform Resource Locator (URL). )
Another addresses like google.com can be opened sucessfully. The only problem is 127.0.0.1
Any ideas?
回答1:
Set a no_proxy
or NO_PROXY
environment key with 127.0.0.1
, optionally with localhost
too:
import os
os.environ['no_proxy'] = '127.0.0.1,localhost'
On Windows the ProxyOverride
key in the HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings
registry is consulted as well, you probably have localhost
registered as exception. Check your proxy settings to verify this.
来源:https://stackoverflow.com/questions/16060254/python-urllib2-can-open-localhost-but-not-127-0-0-1