douyin-downloader | 开源抖音视频、图集与作者主页批量下载工具

douyin-downloader 是一个以 Python 为主体的开源抖音内容下载项目,面向单个作品和作者主页批量归档。它能处理视频、图集、合集与音乐,并把封面、音频、头像和 JSON 元数据按配置保存到本地;源码还提供评论采集、直播录制、关键词搜索、REST API 和浏览器翻页兜底。项目采用 MIT License,但下载工具的开源许可不等于获得平台内容的转载或商用授权。

douyin-downloader 抖音视频、图集与合集批量下载封面
douyin-downloader 下载与本地归档流程概念图(AI 生成)。

截至 2026 年 9 月 12 日核对,仓库默认分支为 mainpyproject.toml 中的源码版本是 2.0.0,主要语言为 Python。仓库同时提供名为 Douzy 的桌面端构建,最新 Release 为 desktop-v0.11.5;两者版本体系不同,不能用桌面端版本替代 Python 包版本。

它能下载哪些抖音内容,输出不只是一个 MP4

单链接模式支持普通视频、图文作品、合集和音乐;作者主页模式可按 postlikemixmusic 选择内容范围。登录账号的收藏夹另有 collectcollectmix 模式,但这两个模式必须单独运行,不能和前述四种主页模式组合。

输入或模式主要用途关键边界
视频、图文、合集、音乐链接下载单个目标及相关媒体短链接会先解析;页面或接口变化可能导致失效
作者主页 + post/like/mix/music批量归档作者发布、点赞、合集或音乐需要有效 Cookie;不同模式可按作品 ID 去重
collect / collectmix读取当前登录账号的收藏夹内容只能处理 Cookie 所代表的账号,且必须单独运行
直播间链接实验性保存 FLV 或 HLS 播放列表HLS 只保存播放列表,需另用 ffmpeg 处理为可播放文件

项目会优先选择无平台水印的视频源,并可按码率阶梯选择较高质量版本。这只是下载源选择逻辑,不会清除作品本身已有的文字、Logo 或作者标记,也不改变原内容的著作权归属。

从配置文件启动:Python 3.9+ 是更稳妥的基线

README 的快速开始仍写 Python 3.8+,但当前 pyproject.toml 明确要求 >=3.9。准备新环境时应采用更严格的 Python 3.9+,避免按照旧说明安装后才遇到依赖或打包限制。

pip install -r requirements.txt
cp config.example.yml config.yml
python -m tools.cookie_fetcher --config config.yml
python run.py -c config.yml

自动 Cookie 获取依赖浏览器时,还要额外安装 Playwright 与 Chromium:

pip install playwright
python -m playwright install chromium

登录抖音后回到终端确认,工具会把 Cookie 写入配置。config.yml 含有账号会话信息,不应上传到公开仓库、分享给他人或写进容器镜像。若只想追加一个任务,可用 -u 传入链接,以 -t 调整并发,以 -p 指定下载目录。

浏览器兜底用于翻页受限,不是全程自动绕过验证

当作者主页翻页受限时,browser_fallback 可以启动浏览器继续获取页面;当前仓库说明只有 post 模式得到完整验证,likemixmusic 仍依赖 API 翻页。遇到验证码时可能需要人工处理,不能把这一机制理解为永久绕过平台风控。

批量任务如何去重、重试和恢复

默认配置使用 5 个并发任务、3 次重试,并以 1、2、5 秒退避;请求速率默认限制为每秒 2 次。SQLite 会记录下载元数据和历史,但增量跳过最终依据是当前下载目录里是否存在非空的主媒体文件。删除文件后,即使数据库仍有记录,下一次运行也会重新下载;反过来,只删数据库而保留文件,并不会强制重下。

increase.postincrease.likeincrease.mixincrease.music 可以按模式开启增量下载。配合 start_timeend_time 和每种模式的数量上限,可以把一次全量抓取缩小成可控的时间窗口。项目还会核对 Content-Length,并清理未完整写入的文件,适合长时间批量任务出现网络中断后的恢复。

Douzy 桌面端把同一后端包装成可视化工作区

仓库 README 展示的 Douzy 桌面端覆盖抖音、TikTok 和 YouTube,提供多链接队列、任务状态、失败重试与本地作品档案。对只想粘贴链接的用户,它比编辑 YAML 更直接;对要部署服务或定制采集逻辑的开发者,Python CLI、Docker 和 REST API 仍是更透明的入口。

Douzy 桌面端粘贴抖音链接下载界面
官方仓库 README 中的 Douzy 抖音链接下载工作区,使用演示数据保护隐私;截图底部版本标记可能落后于当前 Release,本文不把它作为版本依据。来源:https://github.com/jiji262/douyin-downloader/blob/main/img/desktop/001.png

桌面端目前仍处于封闭测试阶段。最新 0.11.5 Release 提供 Windows x64、macOS Intel 与 Apple Silicon 构建,但文件未签名,首次启动可能触发 Windows SmartScreen 或 macOS Gatekeeper;标准版单链接入口无需邀请码,批量队列和高级界面流程仍需要内测资格。是否运行未签名程序应由用户结合来源、校验和与自身环境决定。

REST API、评论、转写和通知属于可选扩展

安装 fastapiuvicorn 后,可以用 python run.py --serve --serve-port 8000 启动 REST 服务,通过 /api/v1/download 提交任务,再查询任务状态或健康检查。服务默认监听 127.0.0.1,若改为可被其他设备访问,应自行增加身份验证、网络隔离和访问控制,避免把下载能力与 Cookie 环境直接暴露出去。

评论采集会把作品评论保存为 JSON,可选择是否继续请求二级回复;直播录制仍被项目标为实验性。视频转写功能需要单独启用,并向 OpenAI 兼容的转写接口提交音频,密钥建议通过 OPENAI_API_KEY 环境变量提供。图文作品不会生成转写,启用这一功能也意味着音频会离开本地环境。

Bark、Telegram 和 Webhook 可用于任务完成通知,单个通知渠道失败不会阻断下载流程。通知地址、机器人令牌与聊天 ID 同样属于敏感配置,适合放入本地密钥管理或环境配置,而不是提交到仓库。

使用边界:平台规则、账号隐私和内容版权要分别判断

这类工具依赖平台页面、接口与 Cookie,功能会随抖音的风控和数据结构变化。作者主页只获得约 20 条内容时,项目建议启用非无头浏览器兜底并人工完成验证;这说明稳定性取决于账号状态和平台策略,不能把当前功能列表当成长期兼容承诺。

MIT License 允许在保留许可声明的条件下使用、修改和分发仓库代码,但视频、音乐、图集、评论与用户资料仍受原作者权利、平台条款及适用法律约束。项目自己的免责声明也将用途限定为技术研究、学习交流与个人数据管理。批量下载前应确认自己有权保存和使用目标内容,并避免收集无关的个人信息。

版本与官方入口

源码包版本 2.0.0、桌面端版本 0.11.5 以及 README 中的界面截图版本属于不同层次。本文以 2026 年 9 月 12 日的仓库和 Release 为核对快照,没有在本机登录抖音、运行批量下载或验证各类账号权限。

  • GitHub 仓库:https://github.com/jiji262/douyin-downloader
  • 中文 README:https://github.com/jiji262/douyin-downloader/blob/main/README.zh-CN.md
  • 桌面端 Releases:https://github.com/jiji262/douyin-downloader/releases
  • 配置示例:https://github.com/jiji262/douyin-downloader/blob/main/config.example.yml
  • MIT 许可证:https://github.com/jiji262/douyin-downloader/blob/main/LICENSE
douyin-downloader | 开源抖音视频、图集与作者主页批量下载工具 - 杂货喵
douyin-downloader | 开源抖音视频、图集与作者主页批量下载工具
此内容为免费资源,请登录后查看
M币0
发布平台GitHub
编码语言Python
运行方式Python CLI
项目版本2.0.0(源码)
项目许可MIT
支持系统Windows/macOS/Linux
免费资源
© 版权声明
THE END
喜欢就支持一下吧
点赞3 分享
评论 抢沙发
头像 - 杂货喵
欢迎您留下宝贵的见解!
提交
头像 - 杂货喵

昵称

取消
昵称图片快捷回复

    暂无评论内容