关键词的Twitter Stream响应

时间:2011-03-09 19:34:20

标签: python twitter


我有一个小的python程序从twitter流中提取关键字的推文 想要将关键字与收到的tweets链接。我可以在python中有效地做到这一点 我可能有200多把钥匙 例如:
keywords =“key1,key2,key3”
收到4条推文,我想直接链接传入的文本和密钥..
如下 1)tweets msgs key1 tweets tweets text - > KEY1
2)tweets msgs key2 tweets tweets text - > KEY2
3)tweets msgs key3 tweets tweets text - > KEY3
4)tweets msgs key1 tweets tweets text - > key1

更新
目前正在使用 for循环来迭代密钥列表并使用查找来查看密钥是否存在于推文文本中。但我觉得应该有更好更有效的方式在python中执行此操作。

 for title in title_list:
     if tweet_lower.find(title) != -1:
        setattr(status, 'title',title)
        break

1 个答案:

答案 0 :(得分:0)

使用Python's collection module中的defaultdict

In [1]: from collections import defaultdict

In [2]: tweet_keyword_storage = defaultdict(list)

In [3]: tweet_keyword_storage['key1'].append('tweets msgs key1 tweets tweets text')

In [4]: tweet_keyword_storage['key2'].append('tweets msgs key2 tweets tweets text')

In [5]: tweet_keyword_storage['key3'].append('tweets msgs key3 tweets tweets text')

In [6]: tweet_keyword_storage['key1'].append('tweets msgs key1 tweets tweets text')

In [7]: print tweet_keyword_storage
defaultdict(<type 'list'>, {'key3': ['tweets msgs key3 tweets tweets text'], 'key2': ['tweets msgs key2 tweets tweets text'], 'key1': ['tweets msgs key1 tweets tweets text', 'tweets msgs key1 tweets tweets text']})