是否有任何方法可以使用 twitter4j 列出某些用户的所有推文?
Twitter.get****Timeline()
会从用户的主页时间轴返回20条最新推文的列表,但是如果我想在用户列出所有推文到目前为止该怎么回事。
答案 0 :(得分:3)
您可以使用Paging
对象获取更多状态并导航时间轴,例如:
final Paging paging = new Paging();
paging.count(200); // max statuses you can request for this call
List<Status> statuses = twitter.getUserTimeline(userId, paging);
要获得接下来的200种状态,只需将paging.maxId
设置为您刚刚收到的最早状态的id
,然后再次拨打电话:
paging.maxId(earliestStatusId - 1);
statuses = twitter.getUserTimeline(id, paging);
等等......
我们从maxId
中减去一个因为它是包容性的,我们不想再次获取最早的Status
。
此方法允许您以反向时间顺序获取批量为200的状态。这是Twitter建议处理时间表的方式之一,有关详细信息,请参阅Working with Timelines上的指南。
顺便说一句,您只能通过此API调用检索用户最近状态的3k左右,有关详细信息,请参阅documentation。