多个twitter用户'在没有达到速率限制的情况下在一个站点上馈送


Multiple twitter users' feed on one site without reaching the rate limit

我希望将大量twitter用户转发到使用PHP并在MySQL中缓存tweet的网站上。然而,当我访问API时,我似乎被速率限制问题难住了。我向每个用户发出的每个请求似乎都被视为请求,这是有道理的。

我注意到其他网站*成功地做了同样的事情。他们是如何绕过这个问题的,他们只是被列入了白名单,还是我遗漏了什么技术?

* http://www.twackle.com/NFL/Aaron-Rodgers_1/tweets

流式API是您正在寻找的,更具体地说,是过滤器方法。Filter的最低权限级别允许你实时关注5000个用户,而无需他们授权你的应用,你可以使用这种方法跟踪多达400个关键字。

现在,如果你想历史推文,你会将那些从REST API(流API的参数并没有真正帮助),但是因为你只能检索近3200微博用户通过REST API,你可以几乎回填所有可用微博历史16调用状态/user_timeline传递一个相应参数值200和分页。

http://api.twitter.com/1/statuses/user_timeline.json?screen_name=barackobama&数= 200,页面= 2http://api.twitter.com/1/statuses/user_timeline.json?screen_name=barackobama&count=200&page=3http://api.twitter.com/1/statuses/user_timeline.json?screen_name=barackobama&数= 200,页= 4

每个Twitter账户每小时350个电话,你每小时可以回填大约22个完整的用户时间轴。

在实现方面,您可能会对Phirehose感兴趣,这是一个用于PHP的流API客户端接口。

在获取tweet之前先尝试验证。这应该会增加速率限制

组合多个user_timeline的一个简单方法是创建一个Twitter列表并使用GET/:user/lists/:id/status。这个API请求将返回列表中所有用户的最新tweet。