You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用twit库调用Twitter API报错:端点访问权限受限

解决Twitter API权限受限问题:获取指定话题标签推文

问题根源

你遇到的错误是因为使用了Twitter API v1.1的search/tweets端点,当前免费开发者权限已不再支持该端点,仅开放部分API v2端点和有限的v1.1端点(如媒体上传、OAuth)。

可行解决方案

方案1:切换到Twitter API v2(免费可用)

Twitter API v2的搜索端点(tweets/search/recent)对免费用户开放,你需要替换原有的twit库为支持API v2的库(比如twitter-api-v2),以下是修改后的完整代码:

  1. 安装依赖
npm install twitter-api-v2 xlsx
  1. 替换后的代码
const { TwitterApi } = require('twitter-api-v2');
const XLSX = require('xlsx');

// 替换为你的Twitter API凭据
const client = new TwitterApi({
  appKey: 'YOUR_CONSUMER_KEY',
  appSecret: 'YOUR_CONSUMER_SECRET',
  accessToken: 'YOUR_ACCESS_TOKEN',
  accessSecret: 'YOUR_ACCESS_TOKEN_SECRET',
});

// 搜索参数
const hashtag = '#Example';
const maxResults = 100; // 免费用户最多可获取100条最近推文

// 使用API v2搜索最近推文
client.v2.search(`#${hashtag.replace('#', '')}`, { max_results: maxResults })
  .then(async (result) => {
    // 提取推文链接
    const tweetLinks = result.data.map(tweet => 
      `https://twitter.com/${tweet.author_id}/status/${tweet.id}`
    );

    // 生成Excel文件
    const ws = XLSX.utils.aoa_to_sheet([tweetLinks]);
    const wb = XLSX.utils.book_new();
    XLSX.utils.book_append_sheet(wb, ws, 'Tweet Links');
    XLSX.writeFile(wb, 'tweetLinks.xlsx');

    console.log('Excel文件已生成,包含推文链接。');
  })
  .catch((err) => {
    console.error('错误:', err);
  });

方案2:升级API访问权限(付费)

如果你坚持使用Twitter API v1.1的search/tweets端点,需要在Twitter开发者平台升级到付费的API产品(如Basic或Pro tier),升级后即可恢复对该端点的访问权限。但此方案需要支付订阅费用,仅推荐对v1.1有强需求的场景。

注意事项

  • API v2的search/recent端点仅能获取最近7天内的推文,免费用户最多每次请求返回100条;
  • 确保你的API凭据拥有API v2的访问权限(默认新创建的开发者项目都已开通);
  • 若需要获取更早的推文,需升级到付费的API tier并使用search/all端点。

内容的提问来源于stack exchange,提问作者Akcrazytech 1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 19:38:38