twitteR和ROAuth

时间:2012-02-21 06:29:06

标签: r twitter twitter-oauth

我目前正在尝试从R发送推文,但我无法解决以下错误:

Error in .self$twFromJSON(out) : 
  Error: Could not authenticate with OAuth.

我已按照twitteR插图中的说明和其他有关此问题的stackoverflow问题(http://stackoverflow.com/questions/8122879/roauth-on-windows-using-r),但似乎没有出现这个错误。这是我正在使用的代码:

library("twitteR")
library('ROAuth')

requestURL <- "https://api.twitter.com/oauth/request_token"
accessURL = "http://api.twitter.com/oauth/access_token"
authURL = "http://api.twitter.com/oauth/authorize"
consumerKey = "*****************************"
consumerSecret = "************************"
Cred <- OAuthFactory$new(consumerKey=consumerKey,
                             consumerSecret=consumerSecret,
                             requestURL=requestURL,
                             accessURL=accessURL, 
                             authURL=authURL)
Cred$handshake(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl"))
registerTwitterOAuth(Cred)

通过这里工作。 registerTwitterOAuth返回TRUE,所以你会认为一切正常。但是当我尝试发送推文时,我收到上面列出的错误。

我正在尝试发送推文:

tweet("text to tweet")

这导致:

Error in .self$twFromJSON(out) : 
  Error: Could not authenticate with OAuth.

不确定出了什么问题。 OAuth验证似乎有效,但后来我无法发送推文。

2 个答案:

答案 0 :(得分:3)

这个希望已经解决了我刚刚上传的版本。如果您尚未使用0.9.1版本的ROAuth,是否可以更新您的软件包并重试?

答案 1 :(得分:2)

我刚刚更新了twitteRROAuth个软件包并运行了这些命令,一切都对我有用:

cred = getTwitterOAuth(consumerKey, consumerSecret)
registerTwitterOAuth(cred)
tweet("something incredibly interesting...")

似乎twitterR现在提供了一个更清晰的界面来注册OAuth凭证,这不需要明确使用OAuthFactory$newhandshake来电。当我尝试显式调用这些函数时,事情开始破裂。但是当我使用上面的界面时,一切都很顺利。