r - 使用 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'
我怎样才能让它工作?请!!!!搜索论坛/推特
解决方案
有效!!!
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))
)
推荐阅读
- php - 由于friendsofsymfony/user-bundle,安装symfony/mailer失败
- c# - Revit API WinForms - 将 ComboBox 值传递回命令
- php - 如何显示mysqli准备好的语句的结果?
- rust - 使用 serde 反序列化编号项目
- acumatica - 使用自定义字段和相关表记录恢复固定资产记录
- javascript - jQuery .when() .then() 承诺不遵守 for 循环
- altium-designer - Altium 中的项目级别 DrawnBy 参数
- r - 如何改变数据框以执行参考组更改的功能?
- javascript - Chrome 扩展在所有选项卡中设置切换开关状态
- visual-studio-2019 - Visual Studio 2019 社区加载项目出现错误