我正在尝试在本地测试我的Google App Engine(Python)应用。我需要做一些URL提取,我试过但显示以下错误信息。
"urllib2.URLError: <urlopen error [Errno 101] Network is unreachable>"
所以我试着检查部署是否发生了。它也导致了同样的错误
然后我尝试使用Python shell:
>>>import urllib2
>>>a = urllib2.urlopen("http://google.com")
>>>a.code
200
>>>a.readlines
<addinfourl at 155594924 whose fp = <socket._fileobject object at 0x9443d6c>>
虽然响应代码是200.如果我执行a.readlines我不会得到实际的HTML。 (a .readlines应该输出html?)
在尝试上面之前,我在环境中设置了我的http_proxy变量。我甚至试过urllib2.install_opener(ProxyConfiguredOpener)
。它仍然无效。
我无法打开任何urllib2
网址,因此我无法使用许多工具,例如使用urllib2
进行部署的Google App Engine。任何人都可以说出错了吗?
答案 0 :(得分:0)
a.code == 200
表示urllib2.urlopen()
在Python shell中运行时成功。
在App Engine urllib2.urlopen()
中运行时使用google.appengine.api.urlfetch()
。
如果您在本地运行它,它应该使用您的本地网络配置。错误urlfetch cannot be used behind a proxy已修复。