我有一个用 python 编写的网站,该网站在 Google App Engine 上运行。我需要通过代理获取 url。
阅读文档说我应该能够使用 urllib2 来执行此操作,但似乎应该有效的方法却不是。
import urllib2, urllib
proxy = urllib2.ProxyHandler({'http': 'http://username:password@ipaddress:port'})
auth = urllib2.HTTPBasicAuthHandler()
opener = urllib2.build_opener(proxy, auth, urllib2.HTTPHandler)
urllib2.install_opener(opener)
conn = urllib2.urlopen('http://icanhazip.com/')
print conn.read()
在我的本地开发中运行以上代码会返回我的 IP。在网站上执行相同的代码会返回 Google 使用的 8.35.201.X 地址之一。这几乎就像 ProxyHandler 被忽略了。
如有任何帮助,我们将不胜感激。
请您参考如下方法:
您不能使用代理在 GAE 上发出请求。
至少这对 Java 来说是正确的(直到今天才遇到这个问题。谷歌有意限制了这个)。我很确定 Python 也是如此。
