douyin-downloader 是用 Python 编写的抖音下载项目,提供配置文件、命令行入口和增量下载记录,仓库代码采用 MIT 许可。准备使用前,有一个条件必须先看:截至 2026 年 10 月 6 日核对,官方 README 明确说明,多种 CLI 下载模式正受到平台请求验证阻断。不能把功能列表直接理解为现在都能稳定下载。
单视频、图集、合集、音乐、喜欢和收藏等 CLI 路径均在受影响范围,刷新 Cookie 和增加重试次数不能修复这类验证问题。作者主页的作品模式可以尝试 Playwright 浏览器回退,但能否成功仍取决于平台与会话。本页围绕这条有限的尝试路径,以及源码中的配置含义展开。

Python CLI 与 Douzy 桌面端分开看
Python CLI 当前针对抖音,源码包版本为 2.0.0。项目同时介绍 Douzy 桌面端,桌面端的版本、平台插件和可用功能独立变化,部分批量或高级能力还涉及激活。不能用桌面端的展示效果证明旧 CLI 已恢复,也不能把桌面端的多平台能力直接套给 Python 脚本。
如果目的是立刻下载一个单视频,当前 README 的阻断说明已经影响选择;不值得先花时间反复换参数。想研究代码、配置,或在已有授权会话中尝试作者作品模式,才继续准备以下环境。
用少量作者作品尝试浏览器回退
CLI 要求 Python 3.9+。在仓库目录安装项目依赖,再准备 Playwright 与 Chromium;以下是源码安装步骤,不代表已经验证目标账号能下载:
git clone https://github.com/jiji262/douyin-downloader.git
cd douyin-downloader
python -m pip install -r requirements.txt
python -m pip install playwright
python -m playwright install chromium
- 复制
config.example.yml为config.yml,设置输出目录和作者主页链接。Windows PowerShell 可用Copy-Item config.example.yml config.yml。 - 运行
python -m tools.cookie_fetcher --config config.yml,在打开的浏览器中登录抖音,再回到终端按 Enter 保存 Cookie。Cookie 相当于会话凭据,不放进公开仓库,也不发送给陌生人排错。 - 先只选择作品模式,并限制数量。出现平台验证阻断时,停止反复重试,按当前 README 判断这条路径是否仍可尝试。
下面是从官方配置字段整理的小范围示例,YOUR_SEC_UID 要替换为目标作者标识,其他 Cookie 与媒体开关沿用完整配置中的对应字段:
link:
- https://www.douyin.com/user/YOUR_SEC_UID
path: ./Downloaded/
mode: [post]
number:
post: 10
increase:
post: true
redownload_missing_files: true
python run.py -c config.yml
数量设为 10,方便先确认流程与输出;number.post: 0 表示不限制数量,初次尝试不宜直接这样设。命令行的 -u / --url 会向配置中的链接追加任务,不能当作替换原有链接使用。

“下载过”和“文件还在”是两回事
增量逻辑同时涉及记录与磁盘文件。迁移目录、手工删除视频之后,只看历史记录,容易误以为内容都已保存完整。官方配置中的几个字段各管一件事:
| 配置 | 含义 | 适用时要看清 |
|---|---|---|
| increase.post: true | 增量处理作者作品,依据本地有效主媒体文件跳过已完成内容 | 保留原目录和文件,才能利用既有结果 |
| increase.post: false | 对选定范围重新下载,并可能覆盖文件 | 不适合只是补回个别丢失文件的情况 |
| redownload_missing_files: true | 允许补回已记入历史、但本地缺失的媒体 | 关闭后,数据库有记录的缺失文件可能仍被跳过 |
| number.post | 限制本次作者作品数量;0 为不限 | 先用小批量确认流程,再考虑更大范围 |
设置日期范围时,按配置使用 YYYYMMDD 格式,结束日期包含当天。数量、日期、增量和媒体开关一起影响选取与保存结果,排查遗漏时要把这些条件一起看,不能只根据终端的完成提示判断。
项目可以按开关保存媒体和相关信息。需要备份时,保留实际文件与对应配置、记录;配置文件只说明打算下载什么,本身并不包含视频和图集。不要为了让任务重跑就先清空数据库或整个下载目录。
遇到失败,先分清哪一层出了问题
- 依赖或浏览器缺失:检查 Python 环境、依赖安装与 Playwright Chromium 是否准备好。
- 会话失效:按官方流程更新自己的 Cookie;更新会话不代表解决了平台请求验证。
- 平台验证阻断:对照 README 的已知限制,不用高并发和反复重试当作修复办法。
- 文件看似遗漏:检查数量、日期、增量与补缺设置,以及输出目录是否改变。需要更多日志时,可以查看
-v的详细输出。
README 将直播能力标为实验性,目前主要涉及 HLS 播放列表,不能等同于已经保存可直接播放的直播视频。源码中出现某个入口,也不代表它已达到其他模式同样的可用程度。
MIT 覆盖项目代码;视频、图集、音乐和账号内容的使用条件另算。项目声明将用途限定在研究与学习等范围,实际保存内容仍应取得相应权限。以上依据官方文档与配置说明,不是账号登录、媒体抓取或成功率测试的结果。
- 项目与当前限制:
https://github.com/jiji262/douyin-downloader - 中文说明:
https://github.com/jiji262/douyin-downloader/blob/main/README.zh-CN.md - 完整配置示例:
https://github.com/jiji262/douyin-downloader/blob/main/config.example.yml - 桌面端发行入口:
https://github.com/jiji262/douyin-downloader/releases














暂无评论内容