2010-06-17 251 views
0

我正在使用twitter4J獲取用戶的朋友時間表,但未返回完整的可用歷史記錄。我知道有分頁限制(每個請求200個,總共3200個,按照the documentation),我很好。我提出如下要求:Twitter朋友時間表未返回完整歷史記錄

private static final int MAX_COUNT = 200; 

private List<Status> getAllStatuses(long sinceID) throws TwitterException { 
    Twitter twitter = new Twitter(username, password); 
    List<Status> friendsTimelineList = new ArrayList<Status>(); 
    List<Status> tempList; 

    int page = 0; 
    do { 
     page++; 
     tempList = twitter.getFriendsTimeline(
          new Paging(page, MAX_COUNT, sinceID)); 
     if(tempList == null) 
      break; 
     friendsTimelineList.addAll(tempList); 
    } while(true); 

    return friendsTimelineList; 
} 

這導致在3頁中只返回423個狀態。任何想法爲什麼這可能會發生?

回答

0

基本上,我不知道在API中知道哪些數據會允許您從Twitter獲取歷史數據。有人推測他們甚至沒有在自己的服務器上記錄信息。至少可以通過挖掘不同的java api來獲得這些信息,但是沒有任何一個頁面返回更多的頁面。

這裏有張貼在我得到的信息,從另一個問題(類似): Getting historical data from Twitter

因此,要回答你的問題正在發生,那是因爲Twitter的不允許你攫取更多的那麼,無論是因爲他們沒有它,或者他們不希望你擁有它:)

相關問題