由于某些原因,我从以下 url 获取 JSON 数据的部分有时只能工作。有时它会返回 404 错误,并抱怨缺少 header 属性。如果我将其粘贴到网络浏览器上,它会 100% 正常工作。所以我确信链接没有损坏或其他什么。
我在 Python 中收到以下错误:
AttributeError: 'HTTPError' object has no attribute 'header'
这是什么原因?可以修复吗?
顺便说一句,我删除了 API 密钥,因为它是私有的。
try:
url = "http://api.themoviedb.org/3/search/person?api_key=API-KEY&query=natalie+portman"
header = { 'User-Agent': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16' }
req = urllib2.Request(url, None, header)
f = urllib2.urlopen(req)
except urllib2.HTTPError, e:
print e.code
print e.msg
print e.header
print e.fp.read()
正如记录的那样here http://help.themoviedb.org/discussions/problems/135-little-api-v3-gotchas-that-should-get-documented,您需要显式接受 JSON。只需在第一行之后添加第二行即可。
req = urllib2.Request(url, None, header)
req.add_header('Accept', 'application/json')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)