在 Python 问题中解析 JSON
Parse JSON in Python Issue
我目前正在使用雅虎 api。
我能够从 api 调用中检索到 json 响应。我正在尝试在 python 中解析此数据,但目前遇到了问题。
这是我正在执行的过程,但未正确解析并出现错误。
resp.content - 这包含 JSON 消息 - json 如下所示
{"query":{"count":1,"created":"2015-09-22T19:52:42Z","lang":"en-US","results":{"player":{"player_key":"348.p.4256","name":{"full":"Peyton Manning"}}}}}
以下步骤
>>> import json
>>> parsed_json = json.loads(resp.content)
我只想提取和打印 Peyton Manning
>>> print(parsed_json['full'])
当我 运行 打印行时: 我收到此错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'full'
有谁知道我在这个例子中做错了什么。
你有一个嵌套字典;值为其他词典的词典。
使用 pprint.pprint()
function 会更清楚:
>>> from pprint import pprint
>>> pprint(parsed_json)
{u'query': {u'count': 1,
u'created': u'2015-09-22T19:52:42Z',
u'lang': u'en-US',
u'results': {u'player': {u'name': {u'full': u'Peyton Manning'},
u'player_key': u'348.p.4256'}}}}
您需要沿着路径寻址键以获取 'full'
键的值:
>>> parsed_json['query']['results']['player']['name']['full']
u'Peyton Manning'
我目前正在使用雅虎 api。
我能够从 api 调用中检索到 json 响应。我正在尝试在 python 中解析此数据,但目前遇到了问题。
这是我正在执行的过程,但未正确解析并出现错误。
resp.content - 这包含 JSON 消息 - json 如下所示
{"query":{"count":1,"created":"2015-09-22T19:52:42Z","lang":"en-US","results":{"player":{"player_key":"348.p.4256","name":{"full":"Peyton Manning"}}}}}
以下步骤
>>> import json
>>> parsed_json = json.loads(resp.content)
我只想提取和打印 Peyton Manning
>>> print(parsed_json['full'])
当我 运行 打印行时: 我收到此错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'full'
有谁知道我在这个例子中做错了什么。
你有一个嵌套字典;值为其他词典的词典。
使用 pprint.pprint()
function 会更清楚:
>>> from pprint import pprint
>>> pprint(parsed_json)
{u'query': {u'count': 1,
u'created': u'2015-09-22T19:52:42Z',
u'lang': u'en-US',
u'results': {u'player': {u'name': {u'full': u'Peyton Manning'},
u'player_key': u'348.p.4256'}}}}
您需要沿着路径寻址键以获取 'full'
键的值:
>>> parsed_json['query']['results']['player']['name']['full']
u'Peyton Manning'