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

使用Tweepy获取推文点赞/转发用户返回空结果的问题

问题

我尝试编写函数获取某条推文的点赞用户列表,使用了Tweepy的get_liking_users函数。此前已成功获取过推文信息,当前使用的推文ID经Twitter UI确认确实有点赞和转发,且单独请求该ID的推文文本也成功。

我的代码如下:

def findLikers():
    client = tweepy.Client(bearer_token='XXX')

    id = 'XXX'

    users = client.get_liking_users(id=id, max_results=10)

    print(type(users))
    print(users)

但运行后得到空响应,输出为:

<class 'tweepy.client.Response'>
Response(data=None, includes={}, errors=[], meta={'result_count': 0})

我确认推文ID正确,但调用get_liking_users或get_retweeters时始终返回data=None,尝试其他推文ID结果一致。参考相关教程和帖子仍无法解决,请问哪里操作有误?

解决思路与方案
  • 权限不足是核心问题:Twitter API v2的get_liking_users和get_retweeters接口,普通免费版开发者账号的Bearer Token没有访问权限,必须升级到**Academic Research(学术研究)或Business(商业)**级别的账号才能调用这些端点。你可以登录Twitter开发者平台,查看自己的账号权限等级,确认是否符合要求。
  • 检查推文隐私设置:如果目标推文来自私有账号(用户设置了保护),即使你能在UI看到点赞,API也不会返回点赞用户列表——这类隐私数据只有推文作者本人能通过API获取。
  • 更新Tweepy版本:旧版Tweepy对API v2的支持可能存在兼容问题,执行pip install --upgrade tweepy更新到最新版本再尝试。
  • 再次验证Token权限:即使能获取推文文本,也要确认你的Bearer Token包含tweet.read和users.read权限(在开发者平台的Token详情页可以查看),不过核心还是账号权限等级的问题。
  • 确认推文ID无误:虽然你说ID正确,但可以用client.get_tweet(id)再验证一次,确保传入的ID对应目标推文,避免因ID格式错误(比如带了URL后缀)导致的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 04:32:31