2012-02-16 236 views
0

感谢您的帮助!Google App Engine&python的urllib错误[Errno 11003] getaddrinfo失败

我想得到一个网站的内容,所以我用urllib.urlopen(url)

set url='http://localhost:8080'(tomcat page) 

如果我使用Google App Engine启动器,请运行应用程序,浏览http://localhost:8082,它工作正常。 但是,如果我为应用程序指定的地址和端口:

python `"D:\Program Files\Google\google_appengine\dev_appserver.py" -p 8082 -a 10.96.72.213 D:\pagedemon\videoareademo` 

有些不对劲:

Traceback (most recent call last): 
File "D:\Program Files\Google\google_appengine\google\appengine\ext\webapp\_webapp25.py", line 701, in __call__ 
    handler.get(*groups) 
File "D:\pagedemon\videoareademo\home.py", line 76, in get 
    wp = urllib.urlopen(url) 
File "C:\Python27\lib\urllib.py", line 84, in urlopen 
    return opener.open(url) 
File "C:\Python27\lib\urllib.py", line 205, in open 
    return getattr(self, name)(url) 
File "C:\Python27\lib\urllib.py", line 343, in open_http 
    errcode, errmsg, headers = h.getreply() 
File "D:\Program Files\Google\google_appengine\google\appengine\dist\httplib.py", line 334, in getreply 
    response = self._conn.getresponse() 
File "D:\Program Files\Google\google_appengine\google\appengine\dist\httplib.py", line 222, in getresponse 
    deadline=self.timeout) 
File "D:\Program Files\Google\google_appengine\google\appengine\api\urlfetch.py", line 263, in fetch 
    return rpc.get_result() 
File "D:\Program Files\Google\google_appengine\google\appengine\api\apiproxy_stub_map.py", line 592, in get_result 
    return self.__get_result_hook(self) 
File "D:\Program Files\Google\google_appengine\google\appengine\api\urlfetch.py", line 365, in _get_fetch_result 
    raise DownloadError(str(err)) 
DownloadError: ApplicationError: 2 [Errno 11003] getaddrinfo failed 

最奇怪的是,当我更改URL形式“http://localhost:8080”到“http://127.0.0.1:8080”,它效果很好!

我GOOGLE了很多,但我没有找到任何好的解决方案。希望有一些帮助! 此外,我没有配置任何代理.IE运作良好。

回答

1

您的系统不一定知道本地主机应该解析为127.0.0.1。您可能需要将条目放入主机文件中。在Windows上,它位于C:\Windows\System32\drivers\etc\hosts

+0

感谢您的帮助!但是为什么应用程序可以很好地工作,我从Google App Engine启动程序开始?我的系统必须知道本地主机应该解析127.0.0.1,否则浏览http:// localhost:8080在IE中不会显示tomcat页面。我是对吧? – user1213298 2012-02-17 01:38:29

相关问题