我需要一些帮助来解析一个大的JSON文件。
这里我只有一个数据样本(只有两项)。
我需要使用解析方法。open()
不起作用,因为文件太大。
parser=ijson.parse("sample.json")
我需要循环并打印出所有
Identifier
中的Assets
。不可能这么难,但我找不到正确的代码。
谢谢你给我的建议。
彼得
json数据:
{
"AssetCount": 2,
"Server": "xy",
"Assets": [
{
"Identifier": "21979c09fc4e6574"
},
{
"Identifier": "e6235cce58ec8b9c"
}
]
}
最佳答案
尝试ijson.parse(open('sample.json'))
。输出将类似于
list(ijson.parse(open('sample.json')))
[('', u'start_map', None),
('', u'map_key', u'Server'),
(u'Server', u'string', u'xy'),
('', u'map_key', u'Assets'),
(u'Assets', u'start_array', None),
(u'Assets.item', u'start_map', None),
(u'Assets.item', u'map_key', u'Identifier'),
(u'Assets.item.Identifier', u'string', u'21979c09fc4e6574'),
(u'Assets.item', u'end_map', None),
(u'Assets.item', u'start_map', None),
(u'Assets.item', u'map_key', u'Identifier'),
(u'Assets.item.Identifier', u'string', u'e6235cce58ec8b9c'),
(u'Assets.item', u'end_map', None),
(u'Assets', u'end_array', None),
('', u'map_key', u'AssetCount'),
(u'AssetCount', u'number', 2),
('', u'end_map', None)]
ijson也可以从pypi获得。
关于python - Python ijson解析文件(来自softwaremaniacs.org的ijson),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20149321/