对于一个研究项目,我想获得最近3个月的Twitter消息。除了技术挑战,这可能吗?通过使用某种慢速轮询机制来控制速率限制器?
Twitter API声明“客户可以通过页面请求最多3,200个状态,并计算时间线REST API的参数”这些是每小时?每天?或...永远不会消失?
有什么建议吗?它甚至在理论上是可能的吗?有人做过类似的事吗?
谢谢! 马可
答案 0 :(得分:5)
Twitter臭名昭着的是不会发布超过三周的“可用”推文。在某些情况下,你只能得到一个星期。你最好在接下来的三个月里存储推文。很多人都怀疑他们是否被Twitter推迟了。
你在寻找任何推文吗?如果是这样,请查看Streaming API的status/sample方法。流API使用持久的HTTP套接字,这可能是一个痛苦的程序,但它是非常优雅的,当你让它工作。我建议设置一个小脚本,将状态/样本中的推文转储到数据库中。几天后你应该有一个TON的数据。
答案 1 :(得分:3)
你可以使用搜索API,不要给它一个搜索,每页返回最多100个,然后每分钟两次(每小时120次 - 比速率限制少30次)通过每个页面。但是,如果我的数学是正确的,这可能会给你每小时720,000条推文......问题是Twitter在过去3个月内增加了大约17.5亿条推文。因此,如果我的数学是正确的,那么你需要2361天或6年才能完成这项工作。
您可以在Google网上论坛的Twitter发布讲座中提出这个问题,或者联系Twitter获取白名单,这样您每小时就可以收到20,000个请求。
就个人而言,我认为这是不可能的。
答案 2 :(得分:1)
DataSift声称即将推出Twitter历史数据api,您可以注册以在可用时here通知。
答案 3 :(得分:0)
当您第一次提出问题时,这可能不存在,但“PeopleBrowsr”API非常适用于此,您可以通过一次API调用返回1400天:https://developer.peoplebrowsr.com/pb
希望有所帮助!
答案 4 :(得分:0)
Keyhole可以在xls中获取历史推文或将其呈现在可视化仪表板中。预览仅会过滤几条最新推文,但是,如果您通过电子邮件发送,则可以请求历史数据。
答案 5 :(得分:0)
您可以使用Gnip的历史PowerTrack工具阅读Twitter历史数据。从第一条推文开始,它将允许您访问所有Twitter数据,相当简单的工具使用。
答案 6 :(得分:-1)
您可以使用我公司建立的名为Sifter的服务获取数据范围和费用的免费估算值。如果您决定购买数据,则可以通过我们的文本分析平台DiscoverText获取,您可以在其中搜索,过滤,删除重复,群集,人工代码并对数据进行机器分类。