我正在使用Twitter API,我遇到了问题。我的问题是我不能从Twitter获得所有的推文和转推。我已阅读twitter link上的文档。他们提到了This method can only return up to 3,200 of a user’s most recent Tweets. Native retweets of other statuses by the user is included in this total, regardless of whether include_rts is set to false when requesting this resource.
但是当我点击https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=xxxxx&count=968
时,我只收到198条记录作为回复,我有968条推文。
那么请帮助我如何从Twitter获取所有记录作为回应,我必须通过URL soi传递哪些参数才能获得所有推文和转推?
请建议我采用更好的方法。
答案 0 :(得分:5)
<强> count - optional 强>
指定要尝试和检索的推文数量 每个不同的请求最多200个。计数值最好 被认为是要返回的推文数量的限制因为 计数结束后,暂停或删除的内容将被删除 应用。我们在计数中包括转推,即使include_rts不是 提供。建议您在使用时始终发送include_rts = 1 这个API方法。
来自twitter api,您可以在一个请求中获得200条推文。你必须提出另一个请求来获取下一组推文。你得到198因为转推也算作推文。
<强> The max_id parameter 强>
上述问题的解决方案是使用一种技术来处理称为游标的数据流。 而不是读取相对于列表顶部的时间轴(哪个 经常更改),应用程序应该读取时间轴相对 到已经处理过的推文的ID。这是实现的 通过使用max_id请求参数。
正确使用max_id,应用程序对时间线的第一个请求 端点应该只指定一个计数。处理这个和 随后的回复,跟踪收到的最低ID。这个ID 应作为下一个max_id参数的值传递 请求,只返回ID小于或等于的推文 max_id参数的值。