标题很混乱,我知道,但我不知道怎么说这个问题。
使用twitter4j,我可以获得推文以及转发该推文的用户列表,like this
但是,如果推文实际上是转发,那么我无法获得转发者列表。 Example
这是我用来获取转发者列表的代码:
if(tweet.getId() > 0 && tweet.getRetweetCount() > 0) {
try {
List<Status> statuses = twitter.getRetweets(tweet.getId());
for (Status status : statuses) {
System.out.println("\n" + "\t" + "Retweeter ID:" + status.getUser().getId() + "\n" + "\t" + "Retweeter Name:" + status.getUser().getScreenName());
}
} catch (TwitterException e) {
//twitter.getRetweeterIds(tweet.getId(), 2, -1);
e.printStackTrace();
}
}
如何获得转推的转发者?
答案 0 :(得分:0)
Twitter4J 是一个与Twitter REST API接口的Java客户端库。 要理解使用它的正确调用,最好了解底层REST API。
查看Twitter Rest API,我们可以看到一个API,该API返回转发了特定推文GET statuses/retweeters/ids的用户列表。
在您的代码中,您正在使用的 Twitter4J API getRetweets()
不会返回转发的用户的ID。
查看 Twitter4J Twitter4J API docs,我们找到getRetweeterIds(statusId)
,它返回转发statusId
指示的特定推文的用户ID列表。