试图迭代JSON对象

时间:2012-07-07 22:58:23

标签: python json iteration

我正在尝试使用simplejson迭代JSON对象。

def main(arg1):
    response = urllib2.urlopen("http://search.twitter.com/search.json?q=" + arg1) #+ "&rpp=100&page=15")
    twitsearch = simplejson.load(response)
    twitsearch = twitsearch['results']
    twitsearch = twitsearch['text']
    print twitsearch

我正在传递一个值列表,以便在Twitter中搜索,例如“我是”,“思考”等。

问题在于有多个文本字段,每个Tweet都有一个。我想迭代整个JSON对象,拉出“text”字段。

我该怎么做?我正在阅读文档,无法确切地看到它在哪里谈论这个。

编辑:它似乎存储为JSON对象列表。

尝试这样做:

for x in twitsearch:
         x['text']

如何将x ['text']存储在列表中?将?

2 个答案:

答案 0 :(得分:7)

请注意

twitsearch['results']

是一个Python列表。您可以遍历该列表,将每个对象的text组件存储在自己的列表中。列表理解在这里使用会很好。

text_list = [x['text'] for x in twitsearch['results']]

答案 1 :(得分:0)

易。想出来了。

tweets = []

for x in twitsearch:
    tweets.append(x['text'])