我怎么能用ijson

时间:2014-03-22 14:20:24

标签: python json

我想从一个非常大的json文件中提取abstractText。我使用python中的lib ijson但是我找不到正确的方法来提取我想要的东西 json文件的结构是

{'articles'=[{"abstractText":"text..", "journal":"journal..", "meshMajor":["mesh1",...,"meshN"], "pmid":"PMID", "title":"title..", "year":"YYYY"},..., {..}]

你能帮助我吗? 提前谢谢

2 个答案:

答案 0 :(得分:5)

这不是有效的JSON。单引号'articles'必须加双引号"articles":之后应该有=而不是"articles"。假设它是正确的,你应该使用:

json["articles"][0]["abstractText"]

编辑:ijson库的完整示例:

import ijson
f = open('json.txt')
objects = ijson.items(f, 'articles.item')
for obj in objects:
    print obj["abstractText"]

答案 1 :(得分:0)

with open('file_name.json', 'rb') as input_file:
    parser = ijson.parse(input_file)
    for parent, data_type, value in parser:
        print('parent={}, data_type={}, value={}'.format(parent, data_type, value))