有没有办法列出用户的所有推文?

时间:2014-02-25 16:26:59

标签: java twitter twitter4j tweets

是否有任何方法可以使用 twitter4j 列出某些用户的所有推文?

Twitter.get****Timeline()会从用户的主页时间轴返回20条最新推文的列表,但是如果我想在用户列出所有推文到目前为止该怎么回事。

1 个答案:

答案 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