在Python AppEngine上获得以下错误:
HTTPException:等待来自URL的HTTP响应时超出截止日期:https://www.googleapis.com/books/v1/users/115429583296661000087/bookshelves/1001/volumes?maxResults=12&startIndex=0
URL是.json格式,我通过以下代码抓取它:
request = urllib2.Request(bookShelfUrl, None, {'Content-Type': 'application/json'})
bookShelfJsonRaw = urllib2.urlopen(request)
bookShelfJsonObject = json.load(bookShelfJsonRaw)
在localhost中测试时工作正常,只在生产中出错。它在生产中也运行良好,直到今天它神秘地开始返回该错误。
有什么想法吗?
答案 0 :(得分:1)
我不知道是谷歌解决了这个问题,还是在我修改代码并指定了timout参数而不是http实例化的deafults之后就开始工作了:
httplib2.Http(timeout=15)
答案 1 :(得分:0)
谷歌图书gData API超时,因为我没有传递国家/地区代码。无论出于何种原因,没有国家在本地测试服务器上工作正常,但每当我将其推向生产时它都会超时。添加country = US后,json feed工作正常。
bookShelfUrl = 'https://www.googleapis.com/books/v1/users/' + \
bookShelfId + \
'/bookshelves/1001/volumes?' + \
'maxResults=' + str(maxResults) + \
'&startIndex=' + str(startIndex) + \
'&country=US'