2011-03-09 54 views
0


我有一個小型python程序,用於從關鍵字的twitter流中提取推文。
想要將關鍵字與收到的tweets鏈接。我可以在python中有效地做到這一點。
我可能有200多個按鍵。
例如:
關鍵字= 「KEY1,KEY2,KEY3」
接收4個鳴叫,我想直接鏈接傳入的文本和密鑰..
像下面
1)鳴叫封郵件KEY1鳴叫鳴叫文本 - > KEY1
2)鳴叫封郵件KEY2鳴叫鳴叫文本 - > KEY2
3)鳴叫封郵件KEY3鳴叫鳴叫文本 - > KEY3
4)鳴叫封郵件KEY1鳴叫鳴叫文本 - > KEY1Twitter關鍵字的流式響應

更新:
目前我正在使用for循環迭代密鑰列表並使用找到以查看密鑰是否存在於tweet文本中。但我覺得應該有更好和有效的方式來做到這一點在python中。

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

回答

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']}) 
+0

感謝您的回覆。但我的要求有點不同。我表達了我的要求錯了。在我想要的。我收到很多推文,但我不知道哪些推文屬於哪個鍵。所以我需要一個程序來映射傳入的推文與關鍵字列表。我有一個for循環,通過我的關鍵詞循環,並檢查關鍵字text.This是效率低下的。所以請幫助我的任何鏈接或想法如何我可以做到這一點蟒蛇方式(是一個Java開發人員,現在學習Python) – Natsabari 2011-03-10 16:08:39

+0

@Natsabari,你能請更新你的問題? – 2011-03-14 09:30:23