使用urllib2.urlopen我从本地vs AWS EB获得了不同的错误

时间:2015-07-25 03:38:56

标签: python amazon-web-services urllib2

我在python 2.7.6 app中有这个片段:

try:
    response = urllib2.urlopen(req, timeout=20)
except:
    warning(sys.exc_info())

当我在我的机器上本地运行时,我收到错误:

(<class 'urllib2.URLError'>, URLError(gaierror(8, 'nodename nor servname provided, or not known'),), <traceback object at 0x10ca40b00>)

当我在AWS EB上运行时,我得到了

(<class 'urllib2.URLError'>, URLError(gaierror(-5, 'No address associated with hostname'),), <traceback object at 0x7f59958a1050>)

为什么我会收到不同的错误消息?我相信我在两种环境中运行相同版本的所有内容。

1 个答案:

答案 0 :(得分:0)

您的'req'变量不是具有格式正确的URL的变量,或者可能存在拼写错误。

无论我建议使用请求库。

import requests
try:
    response = requests.get('http://www.whatever.co/',timeout=20)
except URLError as e:
    print(e)
print(response)
# you should get a 200 response