2010-08-18 1 views
0

Интересно, может ли кто-нибудь помочь мне выяснить, как получить сумму, как номер Java long, всех ретвитов меня, глядя на конкретного пользователя, используя либо twitters API, либо Twitter4J. Код ниже дает мне только последние 100 ретвитов, используя Twitter4J!Twitter retweets amount


public static long getReTweets(){ 
    long amount = 0; 
    Twitter tweeter = new TwitterFactory().getOAuthAuthorizedInstance(MyUser.getUserAccessToken()); 
    try { 
     ResponseList retweets = tweeter.getRetweetsOfMe(); 
     amount = retweets.size(); 
    } catch (TwitterException e) { 
     e.printStackTrace(); 
    } 
    return amount; 
} 

ответ

1

с Twitter4J вы можете вызвать getRetweetsOfMe(Paging) разрешить дополнительные страницы ретвитов. Количество результатов 100 - это API limit, поэтому вы должны продолжать вызов метода до тех пор, пока вы не закончите.

1

Согласно сайту разработчиков Twitter, retweet_of_me, вы можете разрешить подсчет не более 100 результатов.

счетчик Указывает количество записей для извлечения. Должно быть меньше чем или равно 100.

http://api.twitter.com/1/statuses/retweets_of_me.json?count=5

Итак, если вы хотите получить всеretweet_of_me, вам нужно пролистать все ваши retweets_of_me и сделать count из 100 Суммируйте все итоговые значения, пока вы не получите никаких результатов со страницы, и это общая сумма retweets_of_me.

PS. Чем больше страниц у вас есть, тем больше работы вам может потребоваться, чтобы опубликовать все страницы.

2

Будьте осторожны: ретвиты, возвращенные API Twitter, являются ретвитами только «нового стиля». Многие люди делают старомодные ретвиты. Чтобы получить полную картину, вам нужно добавить два типа.

Чтобы найти & счет старого стиля, вы можете либо собирать свои упоминания, а затем выбрать RT или выполнить поиск «RT @you несколько ключевых слов».