动态解析复杂的JSON

时间:2014-03-30 15:40:40

标签: python json twitter

我正在研究Twitter json对象,你可以在这个link找到一个例子:

我使用类似于链接中的代码来从json文件中提取信息。但是,在我的情况下,我正在尝试解析动态的Twitter数据,并且一些实体有多个条目或者没有,在这种情况下,解析变得更加棘手,并且涉及大量的字符串操作。

例如,关键字'坐标'存在于两到三个区域中,['坐标'] ['坐标']可能有值或没有值。

类似地,在主题标签中,可能没有主题标签或只有一个主题标签或多个条目。如果我有多个主题标签,则存储为列表,具有嵌套参数,如索引和文本。

例如,[{u'indices': [81, 91], u'text': u'NYFLC2014'}, {u'indices': [92, 102], u'text': u'NYFLC2013'}]

我不会提前知道他们。

这些数据是动态的,需要以xmls的形式存储,然后提供给Apache Solr进行索引。有没有一种有效的解析方法来进行这种活动?

我正在使用python2.7,

1 个答案:

答案 0 :(得分:-2)

您可以使用ast.literal_eval直接将json数据解析为python对象:

import ast
datajson = """[ {u'indices': [81, 91], u'text': u'NYFLC2014'},
                {u'indices': [92, 102], u'text': u'NYFLC2013'}]"""
data = ast.literal_eval(data) 

输出:

data[0]['text']
Out[34]: u'NYFLC2014'