0

我希望我的应用每隔几分钟在 Twitter 上搜索带有特定 #tag 的推文,如下所示:

results = client.search("#mypopulartag")

但是,我不想每次都进行完整搜索。在构建应用程序时,我遇到了 Twitter::TooManyRequests 错误,因为它返回了很多结果(推测 Twitter gem 向 Twitter 发出了一次client.search()调用所需的尽可能多的请求)。

我不需要它每次都搜索超深。能不能把max_id参数传给client.search方法,不浪费API调用?

4

1 回答 1

0

是的,如果您跟踪已处理的最新推文的 id,则可以通过以下方式获取所有推文(使用 gem 版本 5.13):

  client.search(
    "#mypopulartag",
    result_type: 'recent',
    since_id: since_id   # your last processed id
  ).take(15)

请记住,如果有 60 个结果,您将需要执行更多client.search调用才能获取所有推文。对于这些调用,您还需要指定max_id等于在当前搜索中处理的最后一条推文 ID。

于 2015-02-22T15:32:34.657 回答