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

如何利用Tweepy在Python中通过回复推文ID获取父推文ID

嘿,这个问题我刚好熟!用Tweepy获取回复推文的父ID其实挺简单的,分两种版本情况给你讲,推荐用最新的V2版本哦:

使用Tweepy V2版本(官方推荐)

Twitter API V2是目前的主推版本,获取父推文ID的逻辑清晰,需要通过referenced_tweets字段来提取:

  1. 先确保安装了最新版Tweepy:
pip install tweepy --upgrade
  1. 编写代码实现:
    你需要提前准备好Bearer Token(可以在Twitter开发者平台创建项目获取),然后通过get_tweet方法获取推文详情,并指定tweet_fields=['referenced_tweets']来获取关联推文信息。最后遍历referenced_tweets列表,找到类型为replied_to的条目,它的id就是父推文ID。
import tweepy

# 替换成你的Bearer Token
BEARER_TOKEN = "你的Bearer Token"

# 初始化V2客户端
client = tweepy.Client(bearer_token=BEARER_TOKEN)

# 你的回复推文ID(字符串或数字类型都可以)
reply_tweet_id = "1234567890123456789"

# 获取推文详情,指定需要referenced_tweets字段
response = client.get_tweet(
    id=reply_tweet_id,
    tweet_fields=['referenced_tweets']
)

# 提取父推文ID
if response.data and response.data.referenced_tweets:
    for ref_tweet in response.data.referenced_tweets:
        if ref_tweet.type == 'replied_to':
            parent_tweet_id = ref_tweet.id
            print(f"找到父推文ID: {parent_tweet_id}")
            break
else:
    print("这条推文不是回复类型,没有父推文ID")
使用Tweepy V1.1版本(旧版兼容)

如果你的项目还在使用旧版API,可以通过in_reply_to_status_id字段直接获取父ID:

  1. 安装对应版本的Tweepy(如果需要):
pip install tweepy==3.10.0  # 适配V1.1的经典版本
  1. 代码示例:
    需要使用API Key、API Secret、Access Token和Access Token Secret进行OAuth认证,然后调用get_status方法。
import tweepy

# 替换成你的V1.1认证信息
API_KEY = "你的API Key"
API_SECRET = "你的API Secret"
ACCESS_TOKEN = "你的Access Token"
ACCESS_TOKEN_SECRET = "你的Access Token Secret"

# 初始化V1.1 API实例
auth = tweepy.OAuthHandler(API_KEY, API_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
api = tweepy.API(auth)

# 回复推文ID
reply_tweet_id = "1234567890123456789"

try:
    # 获取推文状态,include_entities确保返回完整信息
    tweet = api.get_status(reply_tweet_id, include_entities=True)
    parent_tweet_id = tweet.in_reply_to_status_id
    
    if parent_tweet_id:
        print(f"找到父推文ID: {parent_tweet_id}")
    else:
        print("这条推文不是回复类型,没有父推文ID")
except tweepy.TweepError as e:
    print(f"获取推文时出错: {e}")

注意事项

  • 确保你的Twitter开发者账号有对应的API权限:V2需要tweet.read权限,V1.1需要读取类权限。
  • 如果目标推文被删除、设为私有,或者你的账号没有访问权限,会返回错误,记得添加异常处理逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 16:52:45