r twitter userTimeline error oauth

时间:2016-04-22 15:48:28

标签: r twitter

我正在尝试使用twitteR库检索R中许多用户的推文。 setup_twitter_oauth和一些其他函数如getUser,getFollowers都可以正常工作。我的问题是当我尝试在lapply(或for循环)中使用userTimeline时,它给了我一个OAuth身份验证错误。 (自己运行userTimeline可以正常工作。)我在返回错误后使用了getCurRateLimitInfo(),并且所有命令都显示了可用的限制。

以下是我运行的代码片段。

...
library("twitteR")
setup_twitter_oauth(api_key,api_secret,access_token,access_token_secret)
my_user <- getUser("my_twitter_name")
my_followers <- my_user$getFollowers(n=100)
tweets <- unlist(lapply(my_followers, function(x) userTimeline(x$id, n=100)))

运行lapply(带回溯)时出错:

Error in twInterfaceObj$doAPICall(cmd, params, method, ...) :

OAuth authentication error:
This most likely means that you have incorrectly called setup_twitter_oauth()' 
10 stop("OAuth authentication error:\nThis most likely means that you have incorrectly called setup_twitter_oauth()'") 
9 twInterfaceObj$doAPICall(cmd, params, method, ...) 
8 doPagedAPICall(cmd, n, params, ...) 
7 lapply(X = X, FUN = FUN, ...) 
6 sapply(doPagedAPICall(cmd, n, params, ...), buildStatus) 
5 statusBase(cmd, params, n, 3200, ...) 
4 userTimeline(x$id, n = 100) 
3 FUN(X[[i]], ...) 
2 lapply(my_followers, function(x) userTimeline(x$id, n = 100)) 
1 unlist(lapply(my_followers, function(x) userTimeline(x$id, n = 100)))

我确实查找了OAuth错误,它似乎主要发生在setup_twitter_oauth期间,但不是其他功能。几个问题:

  • 导致此错误的原因以及如何解决?
  • 我的最终目标是从关注者或包含关注者用户名和推文的数据框中获取推文。有没有更有效的方法来实现这一目标?

谢谢!

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题。删除受保护的用户解决了它 尝试像my_followers <- my_followers[protected == FALSE]这样的东西,它应该有效。