我正在尝试从JSON响应中提取单个对象。以下是我从网站上得到的回复:
[{"name":"AAA 404","id":"AAA404","sections":[{"id":"5393643","name":"40053","instructor":"Dellabough"}]},{"name":"AAA 604","id":"AAA604","sections":[{"id":"5393644","name":"40054","instructor":"STAFF"},{"id":"5393645","name":"40055","instructor":"Dellabough"}]}]
使用以下代码(和蜘蛛),我可以获得“name”,“id”和“section”。
def parse(self, response):
jsonresponse = json.loads(response.body_as_unicode())
for i in jsonresponse:
print i["id"], i["name"], i["sections"]
这给了我以下内容:
ID = AAA404 NAME = AAA 404 SECTION = [{u'instructor': u'Dellabough', u'id': u'5393643', u'name': u'40053'}]
ID = AAA604 NAME = AAA 604 SECTION = [{u'instructor': u'STAFF', u'id': u'5393644', u'name': u'40054'}, {u'instructor': u'Dellabough', u'id': u'5393645', u'name': u'40055'}]
现在,我想要做的是拉出部分内的“讲师”,“id”和“名字”。最后,我需要将这些信息与整体ID和部分联系起来,但是现在我最关心的是能够以可用的格式提取这些信息,就像我可以对整体ID,名称,部分一样。
答案 0 :(得分:0)
使用内部循环迭代部分 dicts,每个i的id和名称将与每个相关联:
for dct in i["sections"]:
print(i["id"], i["name"], dct["instructor"], dct["id"], dct["name"])