我正在尝试从 Kontakt.io 的 MQTT 代理中获取数据。这是它提供的格式,包括前导 b' 和尾随 '
b'[
{
"timestamp":1530121741,
"sourceId":"OaBW9",
"trackingId":"t7J5",
"rssi":-57,
"proximity":"IMMEDIATE",
"scanType":"BLE",
"deviceAddress":"ea:21:88:b3:d2:5f"
},
{
"timestamp":1530121741,
"sourceId":"OaBW9",
"trackingId":"t7J5",
"rssi":-68,
"proximity":"IMMEDIATE",
"scanType":"BLE",
"deviceAddress":"ea:21:88:b3:d2:5f"
}
]'
鉴于 JSON 中除了块之外没有任何组织,我如何才能使用键实际从中提取数据?
我试过了:
test = ijson.items(str(msg.payload), 'rssi.item')
columns = list(test)
print(columns[0])
正如在许多示例中所看到的那样,但我无法弄清楚如何在不“挖掘” JSON 树的情况下使其工作(如随处可见的 earth.europe.etc.item 示例)。我应该尝试使用数组索引或类似的东西来获取 rssi.item 吗?我应该修剪 json 的“b'”和尾随的“'”吗?
我不经常使用 Python,所以对此我感到有些不知所措。