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

如何通过Python以编程方式置顶YouTube顶级评论?

YouTube评论自动置顶解决方案

核心结论

官方YouTube Data API 不支持通过参数直接创建或修改置顶评论——不管是你当前用的commentThreads.insert接口,还是其他相关接口,都没有公开的置顶字段。

方案一:模拟网页端置顶请求(curl+Python子进程)

这是目前能实现自动置顶的可行方式,原理是模拟用户手动点击置顶按钮时的HTTP请求,具体步骤如下:

1. 抓取必要请求参数

登录YouTube网页版,打开浏览器开发者工具,手动置顶一条自己的评论,复制对应的POST请求详情,需要拿到:

  • 请求URL(通常是https://www.youtube.com/youtubei/v1/comment/set_pinned?key=AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8,这个key是公开固定值)
  • 请求头里的Cookie、X-Youtube-Identity-Token、X-CSRF-Token
  • 请求体JSON(包含commentId、videoId、pinned: true等字段)

2. Python调用curl执行请求

把抓取到的参数填充到curl命令中,用subprocess调用执行:

import subprocess

def pin_comment(comment_id, video_id, cookie, csrf_token, identity_token):
    curl_cmd = f"""
    curl 'https://www.youtube.com/youtubei/v1/comment/set_pinned?key=AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8' \
      -H 'Content-Type: application/json' \
      -H 'Cookie: {cookie}' \
      -H 'X-CSRF-Token: {csrf_token}' \
      -H 'X-Youtube-Identity-Token: {identity_token}' \
      --data-raw '{{
        "context": {{
          "client": {{
            "clientName": "WEB",
            "clientVersion": "2.20240520.01.00"
          }}
        }},
        "commentId": "{comment_id}",
        "videoId": "{video_id}",
        "pinned": true
      }}'
    """
    subprocess.run(curl_cmd, shell=True, check=True)

# 使用流程:先通过你的现有代码创建评论,拿到评论ID
# comment_thread = self.youtube.commentThreads().insert(...).execute()
# comment_id = comment_thread['id']
# 再调用置顶函数
# pin_comment(comment_id, vidId, "你的Cookie内容", "你的CSRF令牌", "你的Identity Token")

注意事项

  • Cookie和令牌会过期,需要定期更新,或者用无头浏览器(如Selenium)自动获取
  • 这种方式违反YouTube服务条款,可能导致账号受限,风险自负

方案二:无风险替代方案

如果不想冒账号风险,可以用以下方式模拟置顶效果:

  • 在评论开头添加醒目标识,比如【置顶】,让用户快速注意到
  • 在视频简介里引导观众查看这条评论,比如"置顶评论有重要说明👇"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 09:12:54