首页 > 解决方案 > 使用 httr 和 GET 的 Twitter API

问题描述

我正在尝试使用 Twitter API 获取推文(我知道允许您收集推文的软件包,但对于我的任务,我需要使用他们自己的 API)。

我设置了我的应用程序并拥有凭据。但我被困在GET阶段:

我正在使用来构建我的查询,但问题出在我猜的令牌中......

library(httr)
library(jsonlite)

twitter_token <- create_token(
  app = appname,
  consumer_key = key,
  consumer_secret = secret)

url<-"https://api.twitter.com/1.1/search/tweets.json?q=rstats&src=typed_query"


res=GET(url, add_headers(
  'Authorization'=paste("Bearer ", twitter_token))
)

我得到的错误是

Error in as.vector(x, "character") : 
  cannot coerce type 'environment' to vector of type 'character'

我怎样才能让它工作?请!!!!搜索论坛/推特

标签: rapiresttwitter

解决方案


有效!!!

app_keys <- openssl::base64_encode(paste0(key, ":", secret))

r <- httr::POST("https://api.twitter.com/oauth2/token",
                httr::add_headers(Authorization = paste0("Basic ", app_keys)),
                body = list(grant_type = "client_credentials"))
bearer <- httr::content(r, encoding = "UTF-8")

url<-"https://api.twitter.com/1.1/search/tweets.json?q=rstats&src=typed_query"


res=GET(url, add_headers(
  Authorization=paste0("Bearer ", bearer$access_token))
)

推荐阅读