2015-01-26 5 views
3

몇 주 동안 트위터에서 데이터를 수집하고 싶습니다.twitter API rate limit

이렇게하려면, 나는 자동으로 같은 여러 스크립트를 실행하는 RStudio Server 및 crontab을 이용하여 다음 몇 가지 일에

require(ROAuth) 
require(twitteR) 
require(plyr) 

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

searchResults <- searchTwitter("#hashtag", n=15000, since = as.character(Sys.Date()-1), until = as.character(Sys.Date())) 
head(searchResults) 

tweetsDf = ldply(searchResults, function(t) t$toDataFrame()) 
write.csv(tweetsDf, file = paste("tweets_test_", Sys.Date() - 1, ".csv", sep = "")) 

, 내가 몇 트윗 (최대 100) 해시 태그 당 등이됩니다 스크립트가 원활하게 실행됩니다. 그러나, 다른 날에는 특정 해시 태그에 대한 수천 개의 트윗이있을 것입니다 (당연히 "해시 태그"라는 용어는 사용하지 않지만 내 연구에는 필요한 용어).

retryOnRateLimit=10serchTwitter을 더할 수 있습니다. 하지만 매일 여러 해시 태그를 검색 할 때 crontab에서 이러한 쿼리를 어떻게해야합니까?

이러한 쿼리를 구성하려면 15 분 간격으로 한 번 스크립트를 실행하여 수집 할 수있는 트윗을 몇 개 알아야합니다. 아무도 대답을 알고 있습니까? (물론, 트위터 API의 속도 제한에 따라, 나는 15분 창

180 쿼리를 수행하지만, 많은 트윗이 얼마나? 수)

+0

나는 방금 @WhiteHouse를 언급 한 어제의 트윗을 수집하려고 시도했다. 11,000 건 이상의 트윗 이후에 나는 속도 제한에 도달했습니다. – feder80

답변

1

보다는 검색을 수행 몇 분마다 Streaming API

이렇게하면 Twitter를 통해 흐르는 모든 데이터를 실시간으로 전달할 수 있습니다. 검색어에 대한 필터를 설정할 수 있습니다.

"속도 제한"은 없습니다. 단 하나의 지속적인 연결 만하고 Twitter는 검색어와 일치하는 모든 트윗의 샘플을 제공합니다.

+0

좋아,하지만 여러 해시 태그를 포함하여 4 개월 동안 데이터를 수집하려는 경우 단일 영구 연결이있을 때 문제가되지 않습니까? 즉, RStudio Server를 4 개월 동안 사용할 수 없습니다. – feder80

+1

아니, 그건 문제가되지 않습니다. 서버를 설정하고 고유 한 Twitter API 키를 제공 한 다음 모니터링을 시작하고 결과를 데이터베이스로 덤프하십시오. –