yt-dlp-ChromeCookieUnlock
是一个辅助工具,用于帮助 yt-dlp
(YouTube-DL 的高级分支)从 Google Chrome 浏览器中提取 cookies ,以便下载需要登录才能访问的内容(如会员视频、私人视频等)。
这个工具的原理是:
它可以解锁 Chrome 浏览器本地加密存储的 cookies 数据库 ,并将其导出为 yt-dlp
可识别的格式(通常是 Netscape 格式的 .txt
文件),这样 yt-dlp 就能以你的登录身份去下载受限制的视频内容。
使用方法详解
✅ 前提条件
- 你已经用 Google 账号在 Chrome 浏览器中登录了 YouTube
- 已安装 Python 环境(推荐 Python 3.8+)
- 已安装
yt-dlp
- Windows 用户居多(因为该工具主要是为 Windows 编写的)
步骤一:下载或克隆项目
你可以通过 GitHub 获取这个工具:
git clone https://github.com/iteufel/yt-dlp-ChromeCookieUnlock.git
cd yt-dlp-ChromeCookieUnlock
或者直接下载 ZIP 包解压使用。
GitHub 地址:https://github.com/iteufel/yt-dlp-ChromeCookieUnlock
步骤二:运行脚本提取 Cookie
确保你在 Windows 上,并且已登录 Chrome 浏览器中的 YouTube。
执行命令:
python chrome_cookie_unlock.py
默认情况下,它会尝试从当前用户的 Chrome 配置目录中读取 cookies 并解密,然后输出到当前目录下的文件:
cookies.txt
(Netscape 格式)
- 或者
cookies.json
(可选)
步骤三:配合 yt-dlp 使用
有了 cookies 文件后,你就可以使用 yt-dlp
来下载需要登录的视频了。
例如:
yt-dlp --cookies cookies.txt https://www.youtube.com/watch?v=VIDEO_ID
如果你想让它永久生效,可以把 cookies 文件路径加入配置文件中,比如创建 ~/.yt-dlp.conf
:
--cookies C:\path\to\cookies.txt
其他常用参数示例
# 下载整个频道
yt-dlp --cookies cookies.txt -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]" \
--download-archive downloaded.txt \
https://www.youtube.com/@username
常见问题与解决方法
❌ 报错:sqlite3.DatabaseError: file is not a database
可能是 Chrome 当前正在使用 cookies 数据库,导致无法读取。请关闭 Chrome 后重试。
❌ 报错:Could not decrypt data with stored key
Windows 版 Chrome 使用的是 DPAPI 加密 cookie 数据库,脚本依赖 Windows API 解密。如果你不是在当前用户下运行,可能会失败。
确保:
- 使用自己的 Windows 账户运行脚本
- 没有使用远程桌面、虚拟机等环境
- Chrome 已退出
💡 提示
- 如果你使用的是其他浏览器(如 Edge、Brave、Firefox),不能直接使用此工具。
- 有一些替代工具,如
browser-cookie3
,可以在 Linux/macOS 上使用,但功能略有不同。
- 如果你只想临时复制 cookies,也可以使用浏览器插件(如
EditThisCookie
)手动导出。
步骤 | 操作 |
1 | 安装 Python 和 yt-dlp |
2 | 下载yt-dlp-ChromeCookieUnlock |
3 | 运行脚本生成 cookies 文件 |
4 | 使用--cookies cookies.txt 参数调用 yt-dlp |