我正在从API中提取信息。我无法从json响应中提取嵌套字段。以下是我从API获得的代码和JSON响应。
url = www.jkhdöfhpirnl.com/api/v2/articleinfo?
token = api_token=ABCDEG7829848bjbmbsjhgd
x = &pmid
id = "123456"
response_suggestions = requests.get(url + token + x + id)
print (response_suggestions.json()['genes'])
[{'symbol': 'MTHFR', 'mentions': 2, 'variants': [{'key': 'E433A', 'matched': ['A1298C'], 'mentions': 3, 'cdna_effects': [{'hgvsc': 'NM_005957.4:c.1298A>C', 'rsid': ''}, {'hgvsc': 'NM_005957.1:c.1298A>C', 'rsid': ''}, {'hgvsc': 'NM_005957.2:c.1298A>C', 'rsid': ''}, {'hgvsc': 'NM_005957.3:c.1298A>C', 'rsid': ''}], 'url': 'https://mastermind.genomenon.com/detail?gene=mthfr&mutation=mthfr:E433A'}], 'url': 'https://mastermind.genomenon.com/detail?gene=mthfr'}]
我想提取符号,提及和少量变体字段的值。例如。
'symbol': 'MTHFR', 'mentions': 2, 'variants': [{'key': 'E433A', 'matched': ['A1298C'], 'mentions': 3
我怎样才能做到这一点?非常感谢您的帮助。
确保您仔细查看响应的结构,以找出不同的值位于哪个级别以及如何到达该级别。
第一步是列出所有内容的清单[ ... ]
。由于它只有一个元素,因此您可以执行[content] = response
或content = response[0]
将具有相同的效果。
现在您有了可以使用的字典。如果您不知道如何操作,请参阅一些指南/文档。无论如何,您通常都不会提取字典的各个部分,而只会获取所需的值。这里有一些入门示例
symbol_value = content['symbol']
first_variant_key = content['variants'][0]['key']
list_of_cdna_effects = content['variants'][0]['cdna_effects']
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句