2015-07-12 99 views
2

我想从RTS中使用RSON包来获取Twitter推文列表。我想我非常接近解决方案,但我似乎错过了一个步。R - Twitter - fromJSON - 获取推文列表

我的代码如下(在这个例子中,我使用#NBA作为哈希标签):

library(httr) 
library(RJSONIO) 

# 1. Find OAuth settings for twitter: 
# https://dev.twitter.com/docs/auth/oauth 
oauth_endpoints("twitter") 

# Replace key and secret below 
myapp <- oauth_app("twitter", 
        key = "XXXXXXXXXXXXXXX", 
        secret = "YYYYYYYYYYYYYYYYY" 
) 

# 3. Get OAuth credentials 
twitter_token <- oauth1.0_token(oauth_endpoints("twitter"), myapp) 

# 4. Use API 
req=GET("https://api.twitter.com/1.1/search/tweets.json?q=%23NBA&src=typd", 
     config(token = twitter_token)) 
req <- content(req, as = "text") 
response=fromJSON(req) 

我怎样才能从对象“回应”微博的名单?

最后,我想获得这样的:

searchTwitter("#NBA", n=5000, lang="en") 

非常感谢提前!

回答

2

响应对象应该是一个长度为二的列表:状态和元数据。因此,例如,获得第一鸣叫的文本,请尝试:

response$statuses[[1]]$text 

不过,也有旨在使刚这样的更容易的事情了几个R封装的:为流API尝试streamR,和用于REST API的twitteR。后者具有与您所描述的完全相同的searchTwitter功能。

+1

非常感谢提示!以下工作正常:'响应$状态$文本[[1]]'。由于我需要使用max_id遍历时间轴结果以创建更大的推文列表,所以我想我需要使用函数'fromJSON'。或者这也可以与包twitterR? – kanimbla