搜索推特并通过主题标签获取推文,最大化返回的搜索结果数量

时间:2014-03-10 23:21:26

标签: r twitter oauth twitter-oauth data-mining

我正在尝试使用R中的 twitteR软件包 从他们的API编译与Twitter相关的所有推文的语料库。

我将以下代码用于单个#标签(例如)。但是,我的问题是看起来我只是“被授权”访问一组有限的推文(在这种情况下,只有最近的32条)。

library(twitteR)

reqURL <- "https://api.twitter.com/oauth/request_token"
accessURL <- "https://api.twitter.com/oauth/access_token"
authURL <- "http://api.twitter.com/oauth/authorize"
#consumerKey <- Omitted
#consumerSecret <- Omitted
twitCred <- OAuthFactory$new(consumerKey=consumerKey,
                             consumerSecret=consumerSecret,
                             requestURL=reqURL,
                             accessURL=accessURL,
                             authURL=authURL)
options(RCurlOptions = list(cainfo = system.file("CurlSSL", "cacert.pem", package =  "RCurl")))
twitCred$handshake()

#setwd("/Users/user/FIFA")

#save(twitCred, file="twitterAuthentication.Rdata")
#load("twitterAuthentication.Rdata")
registerTwitterOAuth(twitCred)

FIFA<-searchTwitter("#WorldCup", n=9999, since='2007-10-30')

返回以下错误:

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

我的问题是:如何使用特定主题标签访问最大数量的推文? (另外,有人可以澄清“最大”限制实际上是什么吗?为什么我似乎无法接近这个(~1500条推文)的价值?

我在Twitter Developer网站上测试了OAuth,并分别获得了Signature基本字符串,授权标题和cURL命令的签名结果,向我表明我拥有相应的权限&amp;授权从Twitter的服务器中提取适当的数据。如果我错了,或者如果您需要更多信息,请告知/纠正我。

我的API权限目前设置为:Read,Write&amp;访问直接消息

Session Info:

R version 3.0.2 (2013-09-25)
Platform: x86_64-apple-darwin10.8.0 (64-bit)

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] RJSONIO_1.0-3  twitteR_1.1.7  rjson_0.2.12   ROAuth_0.9.3   digest_0.6.3   RCurl_1.95-4.1 bitops_1.0-5  
[8] foreign_0.8-55

loaded via a namespace (and not attached):
[1] tools_3.0.2

其他资源/来源:

twitter package in R maximum tweets using searchTwitter()

此来源声明最大值为1500

Twitter api searching tweets for hashtags

此来源声明最大值为3200

2 个答案:

答案 0 :(得分:4)

这是不可能的,

Using the Twitter Search API

  

“搜索API不是所有推文的完整索引,而是一个   最近的推文索引。目前该指数包括6-9之间   推特的日子。“

答案 1 :(得分:0)

此回复适用于那些仍在寻找类似问题的人...... 您可以添加一个额外的参数'resultType',并提及您是否需要“热门”或“近期”帖子。

FIFA <- searchTwitter("#WorldCup", n=9999, since='2007-10-30', resultType = 'recent')

这应该可以解决问题。