我在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>)
为什么我会收到不同的错误消息?我相信我在两种环境中运行相同版本的所有内容。
答案 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