使用rtweet包search_fullarchive访问推文时遇403错误求助
博士论文推特数据爬取403错误排查(rtweet包)
我正在为博士论文爬取推特数据,使用rtweet包时持续返回403错误,代码如下:
install.packages("rtweet") library(rtweet) api_key <- " " api_secret_key <- " " access_token <- " " access_token_secret <- " " token <- create_token( app = " ", consumer_key = " ", consumer_secret = " ", access_token = " ", access_secret = " ") teste <- rtweet::search_fullarchive("lgbt", token = token, env_name = " ", fromDate = "201401010000", toDate = "202209012359", parse = T)
运行后收到以下错误:
Error: Twitter API failed [403] Check error message at https://developer.twitter.com/en/support/twitter-api/error-troubleshooting
官方错误提示:
Forbidden
请求已被理解,但被拒绝或不允许访问。附带的错误信息会解释原因。请检查您的开发者账户是否包含对您尝试使用的端点的访问权限。您可能还需要将您的应用加入白名单(例如Engagement API或Ads API)或注册获取访问权限。
可能的问题及解决方法
- API端点权限未开通:
search_fullarchive调用的是Twitter全量搜索API端点,即使拥有学术研究API,也需要确认开发者账户是否已开通该端点的访问权限。刚申请的学术账户可能需要1-2个工作日完成权限配置,可登录开发者后台查看"Products"下的权限状态。 - Token参数填写错误:核对
create_token的所有参数:consumer_key对应后台的API Key,consumer_secret对应API Secret Key,不要填反access_token和access_secret需是开发者后台生成的有效令牌,确保无字符遗漏或输入错误app参数必须与后台创建的应用名称完全一致
- env_name参数无效:
env_name是你在开发者后台创建的全量搜索沙箱环境名称,需先在"Academic Research > Full-Archive Search"模块下创建专属环境,再将正确名称填入参数。 - 日期范围或格式问题:虽然格式符合YYYYMMDDHHMM要求,可先缩小日期范围(比如只爬取1天的数据)测试是否成功,排除格式隐形错误或范围限制问题。
- rtweet版本兼容问题:更新rtweet到最新版本,避免因包版本旧导致的API适配问题:
install.packages("rtweet", dependencies = TRUE)
内容的提问来源于stack exchange,提问作者Natan Nascimento
相关产品推荐
相关产品推荐

