我使用twitter4j搜索推文。我看到有人说它可以在两个日期之间搜索推文,它可以返回超过100条推文(默认情况下最多可以推文100条)。但是在我尝试之后,它没有用。我只能从Mon Jul 01 14:55:36到Jul 01 23:47:50检索100条推文。谁能告诉我我做错了什么?
Query query = new Query("haze")
query.setSince("2013-06-30");
query.setUntil("2013-07-02");
query.geoCode(new GeoLocation(XXX, XXX), 200, Query.KILOMETERS);
答案 0 :(得分:0)
您是对的,您最多只能推文100条,但您可以通过收到的Id
Status
设置Query#sinceId(long)
,这样您就可以有效地逐步完成结果,例如:
final QueryResult result = twitter.search(query); // 100 Tweets
final Status lastStatus = getLast(result.getTweets());
query.sinceId(lastStatus.getId());
final QueryResult nextResult = twitter.search(query); // Another 100 Tweets
// and so on...
您可以轻松地将上述内容放入循环中,但请注意不要达到任何速率限制。另外,请注意,您不能search for Tweets older than about a week using the search api。