我试图将JSON响应的输出放入一个更易于阅读的带有列标题的表中。我遇到了试图访问特定JSON信息的问题。这是我到目前为止所拥有的
import json
import requests
import pandas as pd
url = requests.get('https://apitest.com/api/scanners',auth=('', ''))
r = json.loads(url.content)
a = r['items']
我的答复是这样的here
我希望能够将此信息与扫描仪名称、天线号和最后一次扫描日期的信息一起附加,以便最终创建一个带有列标题的数据帧
d = []
for h in a:
d.append(
{ 'ScannerName': h['name'],
'AntennaNumber':h['antennae']['antenna'],
'LastScanDate': h['antennae']['lastScanDate']
}
)
此时,我收到一个“类型错误:列表索引必须是整数或片,而不是str”。我想知道是否有人对可能的解决方案有任何建议,或者我是否需要以不同的方式来处理这个问题。多谢各位
使用纯熊猫数据帧,您可能几乎可以到达您想要的位置:
(走出一张桌子)
要从嵌套的内部级别获取数据,我将使用
df.apply()
和lambda函数'antennaes'的数据类型是一个列表,这就是您无法使用键获取值的原因
您必须迭代“天线”列表,然后才能获得“天线”和“最后扫描日期”键
这可能会像您预期的那样起作用:
相关问题 更多 >
编程相关推荐