douyin-downloader 快速上手:抖音无水印批量下载与主页作品全量抓取
【免费下载链接】douyin-downloaderA practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音批量下载工具,去水印,支持视频、图集、合集、音乐(原声)。项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader
douyin-downloader 是一款开源免费的抖音批量下载工具,可对视频、图文、合集、原声音乐做无水印下载,也能全量抓取作者主页作品。想给某个抖音账号建立本地内容档案,读完这篇就能跑通批量下载流程。
👀 先看效果
粘贴一个抖音链接,界面自动识别作品类型,点「下载」即开始;完成后文件按"作者/模式/日期_标题_作品ID"落到本地目录,每个作品附带封面、原声和 JSON 元数据,失败项可以单独重试。
上图是同一套后端的桌面版 Douzy(内测中),展示"粘贴链接 → 开始下载"的最终形态。
📋 项目档案
一句话定位:面向实用场景的抖音下载器,覆盖"单个作品"和"主页批量"两类用法。
核心能力:
- 无水印优先:自动解析并选择无水印视频源,还按码率自动挑最高清
- 多模式批量:
post/like/mix/music四种主页模式,数量设 0 即全量 - 双重去重:SQLite 数据库 + 本地文件扫描,增量模式只拉新作品
- 浏览器兜底:API 翻页受限时自动启动浏览器,支持人工过验证码
- 附加资源:封面、音乐、头像、JSON 元数据,可选评论采集与视频转写
适合内容创作者、研究者和需要把抖音内容存本地的个人用户。
🚀 快速上手:douyin-downloader 安装与配置
本节只跑通最小闭环:装依赖、改配置、第一次运行。
第 1 步:安装
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt要用浏览器兜底或自动取 Cookie,再装浏览器内核:
pip install playwright python -m playwright install chromium第 2 步:基础配置
复制示例配置,改link、path、mode、number四处即可:
cp config.example.yml config.ymllink: - https://www.douyin.com/user/MS4wLjABAAAAxxxx path: ./Downloaded/ mode: - post number: post: 50完整字段可以参考 config/default_config.py。
第 3 步:取 Cookie 并运行
python -m tools.cookie_fetcher --config config.yml登录抖音后回到终端按 Enter,Cookie 会自动写入配置。然后启动:
python run.py -c config.yml默认 5 线程并发、失败重试 3 次,跑完在Downloaded/下按作者分目录查看结果。
🎬 核心场景实操:作者主页作品全量下载
本节以最典型的"整账号作品备份"为例,写清怎么配、怎么跑、产物是什么。
1. 配置改为全量 + 增量
number.post: 0表示不限量,配合数据库实现二次运行只拉新作品:
mode: - post number: post: 0 increase: post: true database: true2. 启动下载
python run.py -c config.yml -t 8以 300 余个作品的账号为例,8 线程通常约 25 分钟跑完,成功率约 98%。
3. 产物结构
Downloaded/作者名/post/ └── 2024-02-07_作品标题_作品ID/ ├── ...mp4 # 无水印视频 ├── ..._cover.jpg # 封面 ├── ..._music.mp3 # 原声 └── ..._data.json # 元数据任务中心的任务卡片会显示成功/失败计数,点开即可打开输出目录、重试失败项:
📂 其他场景速查:抖音下载模式选择
| 场景 | 对应参数/模式 | 备注 |
|---|---|---|
| 单视频保存 | link:直接填视频链接 | 无需 mode |
| 单图文/图集 | link:填/note/或/gallery/链接 | 短链v.douyin.com自动解析 |
| 合集下载 | mode: [mix]或填合集链接 | 每个作品独立子目录 |
| 原声音乐 | mode: [music]或填音乐链接 | 优先原声文件,缺失回退该音乐首条作品 |
| 收藏夹备份 | mode: [collect]或[collectmix] | 必须单独使用,依赖已登录账号 Cookie |
| 直播录制 | link:填live.douyin.com/房间号+live配置 | 实验性,FLV 可直接播放 |
各模式的策略实现在 core/user_modes/,需要改行为时从这里入手。
🧰 进阶能力清单
- 增量下载:只下载新发布的作品,
increase.post: true且database: true时触发 - 浏览器兜底:API 翻页被限制时自动接管,
browser_fallback.enabled: true触发 - 时间过滤:只取区间内作品,设置
start_time/end_time(格式YYYY-MM-DD) - 评论采集:按作品输出
*_comments.json,含二级回复,comments.enabled: true触发 - 视频转写:调用 OpenAI API 生成 txt/json 字幕,
transcript.enabled: true触发,仅对视频生效 - 热搜榜/搜索:导出 JSONL 快照,
--hot-board 30或--search "关键词" --search-max 100 - REST API 服务:以 HTTP 接口供其他程序提交任务,
--serve --serve-port 8000触发(需pip install fastapi uvicorn) - 完成通知:结束后推送 Bark / Telegram / Webhook,
notifications.enabled: true触发
⚠️ 排坑指南
只能拉到前 20 条作品
- 现象:翻页中断,总数停在 20
- 原因:抖音风控拦截 CLI 翻页请求
- 处理:
browser_fallback.enabled: true、headless: false,浏览器弹窗后手动完成验证,不要急着关窗
请求失败或返回 403
- 现象:单视频/合集/音乐接口报
Blocked by ArgusSecurityPlugin - 原因:2026-08 起抖音 Argus 安全门禁拦截非浏览器请求
- 处理:改用桌面版 Douzy(同后端,内测中),或主页作品走
post模式 + 浏览器兜底,实际效果视平台风控而定
- 现象:单视频/合集/音乐接口报
Cookie 失效
- 现象:原本能下的主页开始报错
- 原因:Cookie 有有效期,数天后通常失效
- 处理:重跑
python -m tools.cookie_fetcher --config config.yml
想重下某个作品却被跳过
- 现象:重复运行不下载已存在作品
- 原因:数据库记录 + 本地文件双重去重
- 处理:删除该作品的本地目录,并执行
sqlite3 dy_downloader.db "DELETE FROM aweme WHERE aweme_id = '作品ID';"
进度刷屏看不清
- 现象:日志盖住进度条
- 原因:info 日志与 Rich 进度条混排
- 处理:确认
progress.quiet_logs: true(默认开启),调试时再临时加-v
下载速度慢、偶发超时
- 现象:速率上不去
- 原因:并发过高触发限流
- 处理:把
thread降到 3,或配置proxy走代理
写在最后
douyin-downloader 把抖音批量下载收敛成一份 YAML 加一条命令,去重、重试、兜底都已内置,配好即可挂着跑。
请仅将下载内容用于个人学习与研究,不要公开传播或商用他人原创作品,并遵守抖音平台的使用条款。
【免费下载链接】douyin-downloaderA practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音批量下载工具,去水印,支持视频、图集、合集、音乐(原声)。项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考