2014-02-26 47 views
4

我試圖使用twitteR函數'searchTwitter'來檢索關鍵字「nba」或hashtag「#nba」的~3000條推文,但它只返回299條「nba」以及2013年1月1日至2014年2月25日期間「#nba」的398條推文。我很困惑,這是正常的嗎?有誰使用twitteR遇到過類似的問題?請幫忙。非常感激!TwitteR:'searchTwitter'只返回一小部分推文

library(twitteR) 
library(plyr) 
library(stringr) 

load("~/twitter_authentication.Rdata") 
registerTwitterOAuth(cred) 

nbahash_tweets = searchTwitter("#nba",since='2013-01-01', until='2014-02-25',n=3000) 

nba_tweets = searchTwitter("nba",since='2013-01-01', until='2014-02-25',n=3000) 


Warning message: 
In doRppAPICall("search/tweets", n, params = params, retryOnRateLimit = retryOnRateLimit, : 
    3000 tweets were requested but the API can only return 398 

然後

Warning message: 
In doRppAPICall("search/tweets", n, params = params, retryOnRateLimit = retryOnRateLimit, : 
    3000 tweets were requested but the API can only return 299 
+0

我還沒有使用'twitteR',但要確保搜索查詢不區分大小寫。 – tonytonov

+0

謝謝。我檢查了查詢不區分大小寫。 – Blue482

回答

12

這是由於到Twitter的搜索API的限制。在Twitter上的常見問題,我發現以下問題: Why are the Tweets I'm looking for not in Twitter Search, the Search API, or Search widgets?

在那裏,它是寫:

由於產能限制,該指數目前僅佔地約一週的鳴叫。

因此,即使您想從2013年1月1日起下載推文,您最多隻能在一週前收到推文。所以推文的數量不會那麼大。

此外,他們說:

我們的搜索服務並不意味着是公共鳴叫的詳盡檔案,而不是所有的微博被索引或退回。

因此,將會有更少的推文可用。

所以,據我所見,你的代碼應該沒問題,並且下載的推文數量很少是由於Search API造成的。

+0

可以從[第三方公司](https://tweetreach.com/twitter-analytics/historical/)購買(*嘆息*)你喜歡的所有推文(Twitter當然擁有!)。這篇文章中的鏈接不再有效,但答案依舊! –