我正在修改我的原始查询,专门询问是否有人可以看到我在下面给出的R代码本身导致无效请求令牌的原因。如果没有,我会知道我的问题在其他地方。
我正在尝试使用twitteR软件包,因为我已经进入了Jeffrey Stanton关于数据科学的免费电子书中的Twitter章节,这帮助我学习了R.我得到了这么多,然后Twitter给了我这样的信息:
哇那里! 此页面的请求令牌无效。它可能已被使用或过期,因为它太旧了。请返回发送给您的网站或应用程序,然后重试;这可能只是一个错误。
我已经安装了bitops,RCurl,RJSONIO,twitter和ROAuth软件包。然后我运行此代码(注意,我不能发布链接,因为我的声誉太低):
reqURL <- "//api.twitter.com/oauth/request_token"
accessURL <- "//api.twitter.com/oauth/access_token"
authURL <- "//api.twitter.com/oauth/authorize"
consumerKey <- "abc"
consumerSecret <- "xyz"
twitCred <- OAuthFactory$new(consumerKey=consumerKey,
consumerSecret=consumerSecret,
requestURL=reqURL,
accessURL=accessURL,
authURL=authURL)
其次是:
twitCred$handshake(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl") )
然后我得到了这个提示:
要启用连接,请将您的网络浏览器指向: http://api.twitter.com/oauth/authorize?oauth_token=Kxa ... 完成后,记录提供给您的PIN并在此处提供:
此时我似乎无法复制推特链接,所以我手动输入它(!)进入我的浏览器,我从Twitter收到消息我开始提问。 我尝试过多次同样的结果。 r-project上的TwitteR插图中的OAuth位没有任何内容(假设我已经完成了我想的!)并且TwitteR包描述的第9页上的示例对我也没有帮助。
感谢。
答案 0 :(得分:0)
我自己回答了原来的问题。我退出了我正在工作的R-studio项目,从twitter开发者网站中重新创建了我的访问令牌和访问令牌秘密,然后将这个代码应用到一个新的R-studio项目中:
requestURL <- "https://api.twitter.com/oauth/request_token"
accessURL = "https://api.twitter.com/oauth/access_token"
authURL = "https://api.twitter.com/oauth/authorize"
consumerKey = "------------"
consumerSecret = "-----------"
twitCred <- OAuthFactory$new(consumerKey=consumerKey,
consumerSecret=consumerSecret,
requestURL=requestURL,
accessURL=accessURL,
authURL=authURL)
download.file(url="http://curl.haxx.se/ca/cacert.pem",
destfile="cacert.pem")
twitCred$handshake(cainfo="cacert.pem")
我从这里得到了:TwitteR, ROAuth and Windows: register OK, but certificate verify failed
这种组合阻止了我从twitter获取请求令牌无效的消息。所以我然后获得了现在有效的twitter链接: 要启用连接,请将您的网络浏览器指向: https://api.twitter.com/oauth/authorize?oauth_token=xxxx
但是我没有进一步深入,所以我在这里写了一个新问题:Where does twitteR PIN code appear during R oauth authentication?
答案 1 :(得分:0)
我遇到了同样的问题。我通过两种方式管理: (1)使用R控制台代替R studio 要么 (2)您使用OCR软件(此)
拍摄链接的快照并转换为文本谢谢和问候!!!