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

关于YouTube API中statistics.dislikeCount()的认证相关问题咨询

YouTube API: 关于 videos.statistics.dislikeCount 的认证与操作指南

1. 核心现状与认证要求

首先明确:YouTube在2021年11月更新政策后,官方API仅向视频上传者本人返回真实的dislikeCount数值。普通开发者(非视频所有者)的任何API请求,该字段都会返回0或直接从响应中移除。

认证要求:

  • 仅当你是目标视频的上传者时,需要通过OAuth 2.0授权获取真实数据,授权范围至少需要https://www.googleapis.com/auth/youtube.readonly(更高权限如youtube也适用),且授权账号必须是视频的所属账号。
  • 非上传者身份:无论使用API密钥还是OAuth授权,都无法获取真实的不喜欢计数。

2. 是否需要针对每个频道单独授权?

不需要。OAuth 2.0授权是绑定你的开发者账号关联的用户账号,而非目标频道:

  • 如果你是多个频道/视频的上传者,用同一个账号完成一次OAuth授权后,就能获取该账号下所有视频的dislikeCount。
  • 非上传者身份不存在“针对目标频道授权”的必要——因为授权了也拿不到数据。

3. 操作步骤(仅适用于视频上传者)

步骤1:配置Google Cloud项目与API

  • 登录Google Cloud控制台,新建项目。
  • 在API库中搜索并启用YouTube Data API v3。
  • 前往“凭据”页面,创建OAuth客户端ID(根据你的应用类型选择,比如桌面应用选“桌面应用”),配置回调地址(桌面应用可直接用默认的http://localhost)。

步骤2:完成OAuth授权流程

  • 使用Google官方客户端库(比如Python的google-api-python-client)实现授权:
    • 生成授权URL,引导上传者账号登录并授权。
    • 获取授权令牌,保存为本地文件(如token.json)用于后续请求。

步骤3:调用API获取dislikeCount

  • 初始化YouTube服务对象,传入OAuth凭据。
  • 调用videos.list接口,指定part=statistics和目标视频ID。

示例代码(Python):

from googleapiclient.discovery import build
from google.oauth2.credentials import Credentials

# 从本地授权文件加载凭据(需先完成OAuth流程)
creds = Credentials.from_authorized_user_file('token.json', ['https://www.googleapis.com/auth/youtube.readonly'])
youtube_service = build('youtube', 'v3', credentials=creds)

# 请求视频统计数据
video_request = youtube_service.videos().list(
    part='statistics',
    id='VIDEO_ID_HERE'
)
response = video_request.execute()

# 仅当授权账号是视频上传者时,返回真实数值
stats = response['items'][0]['statistics']
if 'dislikeCount' in stats:
    print(f"不喜欢计数: {stats['dislikeCount']}")
else:
    print("无法获取真实的不喜欢计数(非上传者身份或API限制)")

关键注意事项

  • 非上传者如需获取dislikeCount,只能依赖第三方非官方数据源,但这类行为违反YouTube服务条款,存在封号或法律风险。
  • OAuth令牌有有效期,需使用刷新令牌定期更新,避免授权失效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 23:57:22