我正在使用twitter 4j进行小型Twitter应用程序,我目前正在使用以下代码来获取关注者ID,我需要的是用户(让我说ME)我喜欢拥有最多关注者数量的前10位用户(以下代码获取用户的profileID)。在我的推特个人资料中,我有80个粉丝,我想收集有更多粉丝的粉丝(前10个)
Twitter twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer(CONSUMER_KEY, CONSUMER_KEY_SECRET);
String accessToken = getSavedAccessToken();
String accessTokenSecret = getSavedAccessTokenSecret();
AccessToken oathAccessToken = new AccessToken(accessToken, accessTokenSecret);
twitter.setOAuthAccessToken(oathAccessToken);
User user = null;
try {
user = twitter.showUser(username);// id = user.getId();
} catch (TwitterException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
答案 0 :(得分:4)
要使用屏幕名称检索给定用户的关注者,请参阅Twitter#getFollowersList()
,例如:
long cursor = -1;
PagableResponseList<User> followers;
do {
followers = twitter.getFollowersList("screenName", cursor);
for (User follower : followers) {
// TODO: Collect top 10 followers here
System.out.println(follower.getName() + " has " + follower.getFollowersCount() + " follower(s)");
}
} while ((cursor = followers.getNextCursor()) != 0);
我使用光标检索所有关注者,默认情况下,api调用只返回20 - 有关详细信息,请参阅Twitter Using cursors to navigate上的指南。
在for循环中,您可以通过检查粉丝数来收集“前10名”粉丝。