抖音批量下载工具douyin-downloader从0到1完整上手:去水印、作者主页全量抓取、合集音乐一网打尽
【免费下载链接】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
运营小林上周接了个新任务:给团队短视频账号拆解竞品内容,50条对标视频,一条条复制链接、在线解析、手动保存。一个下午过去,她只搞定18条,还因为解析网站限流,画质糊了一半,文件名全是"视频_20260424"这种谁也认不出的编号。这不是小林的错——抖音批量下载这件事,用"人肉+在线工具"的组合拳,本来就是一场消耗战。直到她换用了开源工具douyin-downloader:这是一款免费、支持去水印的抖音批量下载器,能一次抓完作者主页全部作品,还顺带保存封面、原声和JSON元数据,同一批50条视频,现在约10分钟跑完,成功率稳定在95%以上。这篇文章,我就以"老朋友"的身份,把它的完整玩法一步步拆给你。
先讲清楚:它到底能下载什么
douyin-downloader不是一个只能存单个视频的小脚本,而是一个覆盖抖音主流内容形态的下载引擎。下面这张能力地图,基本就是它的全貌:
| 内容类型 | 触发方式 | 说明 |
|---|---|---|
| 单个视频/图文 | 粘贴/video/...、/note/...链接 | 无水印源优先,自动挑最高码率 |
| 作者主页批量下载 | 粘贴/user/{sec_uid}链接 | 支持作品、点赞、合集、音乐四种模式 |
| 合集整本备份 | 粘贴/collection/{mix_id}链接 | 一次存下整个合集 |
| 音乐原声抓取 | 粘贴/music/{music_id}链接 | 优先取原声文件,缺失时回退到该音乐下首条作品 |
| 直播录制 | 粘贴live.douyin.com/{room_id} | FLV/HLS 录制,下播自动保留已录数据 |
| 收藏夹导出 | 当前登录账号 +mode: collect | 备份你收藏的内容 |
| 短链/裸域名 | v.douyin.com/... | 自动解析 |
你发现没有?它把"下载"这件事从单一动作,扩展成了"内容归档"。每个作品目录下,除了视频本体,还有封面、音乐、作者头像、*_data.json元数据,甚至可选评论数据。这对做素材库、做研究样本的人来说,价值远超一个 MP4。
上手三步曲:从安装到看到第一个成果
别被上面的功能表吓到,真正跑起来只需要三步,全程不到五分钟。
第一步:克隆项目并装依赖
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt如果你希望自动获取 Cookie 或启用浏览器兜底,再多装一个 Playwright:
pip install playwright && playwright install chromium第二步:准备一份最小配置
复制示例配置,填上你要下载的链接:
cp config.example.yml config.yml最简版本长这样,每行都有注释:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx # 作者主页链接 path: ./Downloaded/ # 保存目录 mode: - post # 下载该主页的全部作品 number: post: 50 # 最多下载50条,0=不限 thread: 5 # 并发数 retry_times: 3 # 失败重试3次 database: true # 开启SQLite去重第三步:运行并观察进度
python -m tools.cookie_fetcher --config config.yml # 自动登录拿Cookie python run.py -c config.yml # 开始下载终端会实时滚动 Rich 进度条,每一条视频的下载状态、耗时、是否跳过一目了然。下面这张图就是批量下载进行中的真实画面,可以看到多个任务并行推进:
跑完之后,你会在./Downloaded/作者名/post/下看到按作品命名的文件夹。下载完成的统计界面长这样,成功数、耗时、保存位置清清楚楚:
三个真实用户的用法:别人是怎么用它省时间的
光说功能还不够,看看别人实际怎么用。
案例一:美食博主矩阵的素材流水线
一家餐饮 MCN 的运营阿凯,每天要收集 50 条竞品探店视频给团队参考。他把 3 个对标账号写进配置,mode同时开启post和like,配合增量开关只拉新内容:
link: - https://www.douyin.com/user/美食博主A - https://www.douyin.com/user/美食博主B mode: - post - like number: post: 100 like: 50 increase: post: true # 只下载上次之后的新作品 like: true效果:以前 2 名实习生手动干 4 小时的活,现在每天定时任务 15 分钟跑完,人力成本直接省掉约九成。
案例二:社科研究团队的一万条样本采集
某社会学课题组需要按话题采集短视频样本。他们不用手动逐个翻页,直接用内置搜索和热搜榜能力:
python run.py --search "猫咪" --search-max 100 -p ./研究数据/ python run.py --hot-board 30 -p ./研究数据/搜索结果以 JSONL 落盘,配合 SQLite 去重,1 万条样本的采集从"预计两周"压缩到了"两天内"。
案例三:培训机构的教学案例库
一家教培机构要按学科沉淀优质教学短视频,只想要"有价值"的内容。虽然工具本身不做内容质量判断,但配合时间过滤和增量策略,可以做到按周归档新增内容:
link: - https://www.douyin.com/user/某数学老师 - https://www.douyin.com/user/某英语老师 mode: - post start_time: "2026-01-01" # 只取今年以来的作品 end_time: "" increase: post: true进阶之道:这样调并发,效率翻倍还不被封
默认配置能跑,但想又快又稳,下面这几个参数值得动手。
并发与重试:找到你的带宽甜点区
thread是并发下载数,默认 5。带宽充足可以调到 8,遇到限速就降回 3,别一味贪多——并发过高反而容易触发平台风控。retry_times配 3~5 次,配合内置的指数退避(1s、2s、5s),失败会自动重试,不打断整个队列。
代理与兜底:网络受限时的两条退路
proxy: "http://127.0.0.1:7890" # 遇到IP限制时配置代理 browser_fallback: enabled: true # 翻页受限时启动真实浏览器 headless: false # 非无头模式,方便手动过验证码当 API 翻页被风控、只能抓到 20 条作品时,browser_fallback会拉起一个真实浏览器继续滚动加载,弹窗出现后你手动完成验证即可,这是成功率的重要保障。
命名与归档:让文件一眼可找
默认命名模板是{date}_{title}_{id},你可以改成{date}_{author}_{title}_{id};作者目录建议用nickname_uid,既直观又不会因昵称改名而分裂历史数据。
filename_template: "{date}_{author}_{title}_{id}" author_dir: "nickname_uid"踩坑地图:这几个坑,几乎人人都会踩
坑一:只能抓到 20 条作品?
九成是翻页风控。先确认browser_fallback.enabled: true且headless: false,浏览器弹窗出现后不要立刻关掉,手动完成验证再等它自己收尾。
坑二:下载的文件"看起来"不完整?
工具内置 Content-Length 完整性校验,不完整的文件会自动清理并重试。如果你发现某个文件一直重试,多半是网络不稳或源被删,去日志里看具体报错:python run.py -c config.yml -v。
坑三:Cookie 失效导致大面积失败?
工具会自动检测并提示。重新跑一次python -m tools.cookie_fetcher --config config.yml重新登录即可,全程交互式,不用手动抠字符串。
坑四:重复下载浪费流量?
只要database: true,SQLite 会记录每一次下载历史,配合本地文件名双重去重,同一个作品不会下载第二遍。想强制重下某个作品,删掉对应文件再清掉数据库里的记录即可。
效率账本:一次投入,长期回本
把账算清楚,值不值得用一目了然:
| 项目 | 人肉+在线解析 | douyin-downloader |
|---|---|---|
| 100条视频耗时 | 约46分钟(且易中断) | 约10分钟(并行) |
| 画质 | 压缩明显,损失30%以上 | 无水印源+最高码率 |
| 去重 | 靠记忆,重复率高 | 数据库+文件双重去重 |
| 元数据 | 几乎为零 | 封面/音乐/头像/JSON齐全 |
| 失败处理 | 中断重来 | 自动重试+跳过继续 |
写在最后:让工具替你跑腿
下载工具的意义,从来不是"多了一个按钮",而是把你从重复劳动里解放出来,把时间还给真正有价值的事。想快速上手,照着这三步走:
- 克隆项目、安装依赖(约 2 分钟);
- 复制
config.example.yml填一个链接,跑通第一条下载; - 再按自己的场景叠加批量、直播、评论、通知等高级配置。
最后必须提醒一句: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
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考