2012-03-27 16 views
3

我想提取儘可能多的包含給定關鍵字(通常是公司名稱)的推文。我應該使用哪個Twitter API爲NLP研究提取大量推文?

我一直在使用Twitter搜索API,但它僅限於「最近的推文」。所以對於一個比較罕見的關鍵詞,我可以得到不超過500條推文。

Twitter說你不應該使用搜索API進行研究。那麼,我應該使用哪個API?

回答

2

Twitter不提供免費訪問歷史數據。 DatasiftGnip都銷售Twitter的fireshose。

4

要使用特定關鍵字獲取大量推文,請使用Streaming APIStatuses/Filter

首先,創建一個文件(例如「tracking.txt」),其術語爲track,關鍵字用逗號分隔。這可以包括散列標籤。例如,我使用以下內容來獲取帶有鏈接和某些主題標籤的推文。

track=http #baby,http #family,http #children, ... 

然後,使用curl將流重定向到一個文件。請務必使用您的推特ID和密碼。

curl -d @tracking.txt https://stream.twitter.com/1/statuses/filter.json -uAnyTwitterUser:Password > stream.json 
+0

感謝您的回答,但恐怕這個API只會推我「新」推文,而不是過去的推文,我說得對嗎?由於我的關鍵字很少,我還需要通過推文。 – Blacksad 2012-03-27 17:38:52

+0

@Blacksad你是對的。儘管如此,它仍然值得一試,因爲給定足夠大的流水線,你可能會發現足夠的數據。 – 2012-03-27 19:42:45

+0

我試過了,我每小時收到1或2條推文,用於我需要的給定關鍵字。我沒有耐心:) – Blacksad 2012-03-27 19:44:52