我想在几周内从Twitter收集数据。
为此,我使用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条),因此脚本运行顺畅。但是,在其他日子里,会有成千上万的推文用于某个标签(当然我没有使用术语&#34;#标签#34;但我学习所需的术语)。
我可以将retryOnRateLimit=10
添加到serchTwitter
。但是当我每天搜索多个主题标签时,我应该如何在crontab中计算这些查询?
为了组织这些查询,我需要知道在15分钟的时间间隔内运行一次脚本我能收集多少推文!有人知道答案吗? (当然,根据Twitter API的速率限制,我可以做到
每15分钟窗口180次查询
但这是多少推文?)
答案 0 :(得分:1)
您应该每隔几分钟执行一次搜索,而应使用 Streaming API
这将为您提供流经Twitter的所有数据的实时Feed。您可以为搜索字词设置过滤器。
没有&#34;速率限制&#34;因此 - 您只需建立一个持久连接,Twitter就会提供与您的搜索字词匹配的所有推文的样本。