yt-dlp 的 YouTube OAuth2 支持
本仓库包含一个插件包,为 yt-dlp 的 YouTube 提取器添加了使用 OAuth2 登录 YouTube 的支持。
请注意:这是实验性功能,随时可能失效!!
关于一般的插件支持,请访问 yt-dlp 的 Discord 服务器,因为这里的回复可能会比较慢。
安装
需要 yt-dlp 2023.10.13
或更高版本。
如果通过 pip
或 pipx
安装了 yt-dlp,可以使用以下命令安装插件:
pip:
python3 -m pip install -U https://github.com/coletdjnz/yt-dlp-youtube-oauth2/archive/refs/heads/master.zip
pipx:
pipx inject yt-dlp https://github.com/coletdjnz/yt-dlp-youtube-oauth2/archive/refs/heads/master.zip
如果你没有通过 pip 或 pipx 安装 yt-dlp,请参阅 安装 yt-dlp 插件 了解此插件包的其他安装方法。
使用方法
启用
使用 --username oauth2 --password ''
启用 OAuth2 登录。你可以将此添加到你的 yt-dlp 配置文件 中。
或者,如果你只想将其应用于 YouTube 提取器,可以在 .netrc 文件 中添加以下内容:
machine youtube login oauth2 password ""
登录
首次运行时,系统会提示你授权 yt-dlp 访问你的 YouTube 账户。
[youtube+oauth2] 要授予 yt-dlp 访问你账户的权限,请前往 https://www.google.com/device 并输入代码 XXX-YYY-ZZZ
在浏览器中打开链接并输入代码。它会显示请求是针对 YouTube on TV 的 - 这是正常的,因为我们使用的是 YouTube on TV 客户端进行 OAuth 认证 ;)
令牌数据会保存在 yt-dlp 缓存中。
如果遇到问题,请使用详细日志模式运行 yt-dlp(-v
)。如果看到 Loading youtube-oauth2.token_data from cache
,则说明它应该正在尝试使用 OAuth。
注意:避免使用 YouTube cookies 运行,因为这可能会导致问题。