免费抖音批量下载工具:6 种模式 3 步跑通无水印合集采集
【免费下载链接】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 是开源的抖音批量下载工具,覆盖视频、图文、合集、音乐与直播录制,无水印、可去重、支持增量下载。写好一份 YAML,跑一条命令,文件按目录结构落盘。
定位:抖音无水印批量下载适合谁
它是一个纯命令行工具:输入抖音链接(主页、视频、合集、音乐、直播房间号均可),按你声明的模式把内容批量拉下来,默认选无水印源,用 SQLite 数据库加本地文件名做双重去重。它适合三类人:要归档博主内容的学习者、找 BGM 的创作者、需要留存直播的运营者。
能力全景:6 种下载模式与配套特性
| 维度 | 能做什么 |
|---|---|
| 下载对象 | 单视频、图文、合集、音乐、短链,以及整个作者主页 |
| 运行模式 | post / like / mix / music 四种主页模式,加收藏夹 collect / collectmix,共 6 种 |
| 直播录制 | 房间号链接录 FLV/HLS,主播下播或中途 Ctrl+C 都保留已录数据 |
| 管理特性 | SQLite 去重、增量下载、start_time/end_time 时间过滤、download_manifest.jsonl 下载清单 |
| 稳定性 | 并发下载、指数退避重试(1s/2s/5s)、默认限速 2 请求/秒、浏览器兜底过验证 |
| 周边能力 | 评论采集、视频转写、热搜榜/关键词搜索导出、Bark/Telegram 通知、REST API 服务模式、Docker 部署 |
桌面版:粘贴链接即可下载
最小配置步骤:4 步从零跑通一次
第 1、2 步,克隆并装依赖:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt第 3 步,复制示例配置并用内置工具获取 Cookie(弹浏览器登录,回车后自动写入配置):
cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml第 4 步,只改几个字段,然后执行:
link: - https://www.douyin.com/user/MS4wLjABxxxx # 要下载的主页链接 path: ./Downloaded/ # 文件落地目录 mode: [post] # 下载类型:post 为发布作品 number: post: 50 # 数量上限,0 表示全部 thread: 5 # 并发线程数python run.py -c config.yml三种典型用法:按角色配置
教程归档者:主页作品与合集全量
目标:把博主的发布作品和合集全部存下,以后定期只补新的。
link: - https://www.douyin.com/user/MS4wLjABxxxx mode: [post, mix] number: post: 0 # 0 = 全量 increase: post: true # 下次运行只拉新作品预期结果:文件落在Downloaded/{作者名}/post和mix子目录,目录名按作品发布时间命名,第二次运行只下载新增内容。
关注列表同步后可直接发起下载
素材收集者:音乐原声批量入库
目标:收集某位音乐人的背景音乐原声。
link: - https://www.douyin.com/user/音乐人主页ID mode: [music] number: music: 100 # 取 100 首原声预期结果:原声 mp3 存到music子目录;某首音乐缺原声文件时,会自动回退到该音乐下的首条作品音轨。
收藏合集支持整包下载
直播记录者:整场直播不留断
目标:录下重要直播,主播下播才算结束。
link: - https://live.douyin.com/123456789 live: max_duration_seconds: 0 # 0 = 录到主播下播预期结果:FLV 文件保存在Downloaded/{作者名}/live/,附带直播间元数据;中途网络波动或手动中断,已录制的字节会自动提升为正式文件。
容易踩的坑:Cookie 过期、翻页风控与重复下载
只能抓到 20 条作品。现象是翻页在第一页后停止。原因是抖音对 API 分页有风控。解法是开浏览器兜底,弹窗出现后手动完成验证,不要立刻关窗:
browser_fallback: enabled: true headless: false请求返回"请先登录"。现象是下载失败或列表为空。原因是 Cookie 过期,有效期大约一周。解法是重跑 tools/cookie_fetcher.py 重新登录:
python -m tools.cookie_fetcher --config config.yml删了文件却不重新下载。现象是重跑时跳过旧作品。原因是去重同时查数据库记录和本地文件名,数据库里有记录就跳过。解法是本地目录和数据库记录都清掉:
sqlite3 dy_downloader.db "DELETE FROM aweme WHERE author_name = '作者名';"代码怎么组织的:5 个模块分层
入口是run.py,转交cli/main.py的主异步循环,往下分成五层:
| 模块 | 职责 |
|---|---|
cli/ | 命令行参数解析、主异步循环、Rich 进度展示 |
core/ | URL 解析、API 客户端、各下载器与用户模式策略 |
auth/ | Cookie 与 ms_token 的读写和刷新 |
control/ | 限速、指数退避重试、并发队列 |
storage/ | SQLite 历史库、文件命名与元数据落盘 |
六种下载模式(post/like/mix/music/collect/collectmix)各自是一个策略类,集中在 core/user_modes/,新增一种模式只需加一个策略文件并注册,不动主流程。
为什么值得长期关注:更新节奏与质量
维护频率上,仓库当前版本 2.0.0,docs/superpowers/下的设计文档从 2026 年 6 月排到 8 月,提交持续。近期三个值得注意的更新:
- 会话过期自动重登:API 返回 2483"请先登录"时自动弹浏览器重新登录并只重试一次,覆盖所有 CLI 命令;
- 时间范围分页提前停止:
post翻页越过start_time后安全停止,全量历史拉取省掉大量无效请求; - 主页任务写 author_url.txt:每个单博主任务在作者目录落下规范主页链接,方便二次定位。
质量上,tests/目录有 60 多个测试文件,CI 跑 pytest 与 lint;同一套 Python 后端还支撑内测中的桌面版 Douzy。
任务中心查看状态与失败重试
写在最后
建议先用一个自己关注的小博主主页试跑一次 post 模式,确认目录结构和去重行为符合预期,再上大批量任务。仅下载个人使用或已获授权的内容,尊重创作者版权并遵守平台规则。
【免费下载链接】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),仅供参考