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

如何使用Tweepy V2 API查询高点赞高转发的热门原创推文

Tweepy V2 高热度原创推文检索方案
  • 首先明确:Tweepy V2 完全支持热门内容筛选,返回大量低互动推文的核心原因是接口默认按发布时间倒序返回最新结果,没有开启热度排序逻辑。
  • 核心调整点1:调用搜索接口时新增sort_order参数,传入值relevancy,接口就会优先返回平台算法判定的高互动、高相关度的热门内容,直接对标V1版本的热门推文搜索能力;默认值recency就是常规使用的最新时间排序模式。
  • 核心调整点2:Twitter V2 API 原生不支持在查询语句里直接设置“转发量≥N”“点赞量≥N”这类硬阈值(互动数据实时变动,查询语法无对应过滤规则),拿到返回结果后需要自己加一层二次过滤,根据业务要求的点赞、转发数阈值筛掉低互动内容即可。
  • 权限注意:search_all_tweets全量历史搜索接口仅对持有学术研究资质的开发者开放,普通开发者账号只能调用search_recent_tweets检索最近7天内的推文,两个接口都支持sort_order参数。

修改后的可参考代码

# 保留原创、指定语言、目标话题的基础过滤规则
query_str = "#chosen_topic lang:en -is:retweet -is:reply"

client = tweepy.Client(
    bearer_token=config.BEARER_TOKEN, 
    consumer_key=config.CONSUMER_KEY,
    consumer_secret=config.CONSUMER_SECRET,
    access_token=config.ACCESS_TOKEN,
    access_token_secret=config.ACCESS_TOKEN_SECRET
)

# 根据自身账号权限选择接口:学术权限用search_all_tweets,普通权限用search_recent_tweets
# 新增sort_order="relevancy"开启热度优先排序
for tweet_batch in tweepy.Paginator(
    client.search_recent_tweets, 
    query=query_str,
    sort_order="relevancy",
    tweet_fields=['context_annotations','created_at', 'public_metrics','author_id', 'lang', 'geo', 'entities'], 
    user_fields=['name','username','location','verified','description'],
    max_results=100, 
    expansions='author_id'
):
    tweet_data = tweet_batch.data
    if not tweet_data:
        continue
    for tweet in tweet_data:
        metrics = tweet.public_metrics
        # 替换为业务实际要求的互动阈值,例:点赞≥1000、转发≥200才保留
        if metrics['like_count'] < 1000 or metrics['retweet_count'] < 200:
            continue
        # 后续处理符合要求的高互动推文
        print(f"点赞数:{metrics['like_count']},转发数:{metrics['retweet_count']},回复数:{metrics['reply_count']}")

补充提示:如果使用search_all_tweets接口,可配合start_time和end_time参数限定检索时间范围,减少无关数据拉取量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 14:18:18