2012-03-27 58 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