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

使用Tweepy调用client.get_user()时遇403 Forbidden认证错误求助

解决Tweepy Client.get_user() 403/401认证错误的方案

核心问题原因

Twitter API v2的get_user等接口要求应用必须绑定到开发者项目,未绑定项目的独立应用凭证无法访问这些接口;同时该接口仅支持Bearer Token认证,OAuth 1.0a凭证(API密钥+访问令牌)不被允许——这是你出现403/401错误的根本原因。而create_tweet接口支持OAuth 1.0a认证,所以发布推文的代码能正常运行。

解决方案步骤

1. 将应用绑定到Twitter开发者项目

  • 登录Twitter开发者门户,进入你的应用详情页,检查顶部是否显示“所属项目”。若未绑定,点击“添加到项目”,创建新项目或选择现有项目完成绑定。
  • 绑定完成后,重新生成所有凭证(包括Bearer Token、API密钥、访问令牌等),确保新凭证关联到项目。

2. 使用正确的认证方式调用get_user

get_user接口仅支持Bearer Token认证,调整代码如下:

import tweepy
import os

# 仅使用绑定项目的应用生成的Bearer Token
bearer_token = os.getenv('TWI_BEARER_TOKEN')
client = tweepy.Client(bearer_token=bearer_token)

user_get = client.get_user(username='twitterusers')
user_id = user_get.data.id
print(user_id)

3. 确认项目访问级别

进入开发者门户的项目页面,确保项目的访问级别为Essential或更高(免费版Essential已满足基础用户查询需求)。旧版未绑定项目的独立应用会被限制访问API v2的部分接口,必须绑定项目才能解锁权限。

验证操作

  1. 替换环境变量中的所有新生成的凭证。
  2. 运行调整后的代码,确认能正常获取目标用户的ID。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 11:47:15