我正在使用Twitter4j库,我正试图获得身份验证用户的关注者列表。
我正在做以下事情:
IDs followersIds = mTwitter.getFollowersIDs(-1);
long [] ids = followersIds.getIDs();
List<User> followers = new ArrayList<User>();
for(int i = 0; i < ids.length; i++) {
followers.add(mTwitter.showUser(ids[i]));
}
虽然这可能有效,但它远非有效,因为它为每个关注者发送一个请求。除了这个方法的缓慢之外,我最终得到了以下错误:
有谁知道更好的方法吗?(我花了一些时间在文档上,但没有找到)。error -超过速率限制。客户的收入可能不会超过350美元每小时请求数。
谢谢!
您应该使用UserMethods
中的lookupUsers(long[] ids)
方法来实现此目的。您向它传递一个最多包含100个用户id的数组(每个请求),并获得返回的所有扩展信息。
请记住,您可能希望使用此方法的异步版本,因为您可能不想在UI线程上执行请求。
有方法
PagableResponseList<User> twitter4j.api.FriendsFollowersResources.getFollowersList(long arg0, long arg1) throws TwitterException