我希望我的应用每隔几分钟在Twitter上使用特定的#tag搜索推文,如下所示:
results = client.search("#mypopulartag")
但是,我不想每次都进行全面搜索。在构建应用程序时,我遇到了Twitter :: TooManyRequests错误,因为它返回了很多结果(推测Twitter gem会根据需要向Twitter发出尽可能多的client.search()
次调用请求。
我不需要每次搜索超深。我可以将max_id
参数传递给client.search方法,因此我不会浪费API调用吗?
答案 0 :(得分: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。