抖音批量下载工具 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 是一个免费的抖音批量下载工具,去水印下载视频、图集、合集、音乐,也能把整个博主主页一次性搬进硬盘。手动挨个保存 50 条作品要半个多小时,它还带着水印;用它跑一遍,无水印源自动挑选、封面与原声、完整数据 JSON 一并落盘,已下载过的自动跳过。下文先把它跑起来,再看跑完手里有什么。
5 分钟跑通:抖音批量下载的最短路径
第一步,获取代码并装依赖(Python 3.8+,macOS / Linux / Windows 均可):
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt第二步,准备配置:从示例文件复制一份config.yml,把link改成你要下载的视频或主页链接,path指定文件落盘目录。
第三步,拿 Cookie(访问抖音 API 的凭证,首次必做):
python -m tools.cookie_fetcher --config config.yml浏览器弹出后登录抖音,回到终端按 Enter,Cookie 自动写进配置。
首次运行:
python run.py -c config.yml想最快拿到一次成功,直接对单条链接开火,一行命令:
python run.py -u "https://www.douyin.com/video/7604129988555574538" -p ./Downloaded常用配置项都收在 config.example.yml 里,改值就够,不用逐行理解:
| 配置项 | 默认值 | 作用 |
|---|---|---|
mode | post | post/like/mix/music任意组合 |
number.post等 | 0 | 各模式数量上限,0 为不限 |
thread | 5 | 并发下载数 |
retry_times | 3 | 失败重试次数 |
start_time/end_time | 空 | 时间过滤,格式 YYYY-MM-DD |
increase.post | true | 增量开关:磁盘已有文件就跳过 |
跑完手里有什么:按发布日期归档的内容资产
跑完一个博主主页,Downloaded/下是这样的结构:按作者名和模式分目录,每条作品一个日期_标题_aweme_id文件夹,视频本体、封面、原声、_data.json各就各位,外加一份记录全部作品的download_manifest.jsonl清单。
桌面版(Douzy,内测中)的界面长这样——粘进一个抖音链接,识别出"单个作品",点下载即可。
| 你的需求 | 工具的做法 |
|---|---|
| 单个视频/图集去水印 | 贴链接,自动挑无水印源 |
| 搬空博主主页 | mode四种模式可组合 |
| 喜欢列表备份 | like模式全量导出 |
| 直播内容留档 | 录 FLV,下播已录部分保留 |
| 素材检索 | 附完整元数据 JSON 与清单 |
不展开机制,只点名:默认 5 线程并发、指数退避重试(1s→2s→5s、默认 3 次)、SQLite 加本地文件双重去重、按 Content-Length 校验并清理损坏文件;翻页被风控卡住时自动拉起浏览器兜底,还能人工过验证码。它给你的不只是一堆 mp4,而是原始画质、无水印、可检索、不重复的内容资产。
挑一个场景用起来
个人备份:点赞列表按日期归档,不依赖平台
经常"码了等于看了"的人,把喜欢列表当成云端网盘并不安全。在配置里把主页换成自己的、mode设为like、number.like设为 0(不限),一条命令python run.py -c config.yml跑完,全部点赞作品按发布日期落进文件夹,每条都带着点赞数、评论数、描述这些元数据。哪天平台上找不到那条视频了,硬盘里还有。
收藏合集同样能整包带走,界面里每个合集都有"下载整个合集"的入口。
内容拆解:几分钟搬空目标创作者,素材当天可用
做竞品分析的人缺的是成体系的无水印素材。把目标博主的主页链接填进link,mode保持post、number.post填 0,cover、music、json三个开关按需打开,一条命令跑完:无水印视频、封面、原声、互动数据全部到位,文件夹按发布日期排好,拆哪条直接开哪条。
团队自动化:增量同步 + 服务化,长期跟踪只拉新增
需要持续盯一批账号的监控方,关心的是可重复执行。把increase.post设为 true,同一配置反复跑,磁盘里已有的作品直接跳过,每天只同步新增内容;对外提供接口时,装好fastapi uvicorn后python run.py --serve --serve-port 8000起 REST 服务,提交{"url": "..."}拿 job_id 查状态即可,项目自带 Dockerfile 可直接容器化部署。
任务中心里每个任务的成功/失败计数一目了然,失败项可直接重试。
避坑与边界:现象对号入座
- 只抓到 20 条左右就停了:这是翻页风控的常见现象。确认
browser_fallback.enabled: true且headless: false,浏览器弹窗出现后手动完成验证,别急着关窗。 - 提示需要登录或解析失败:八成是 Cookie 失效,重跑
python -m tools.cookie_fetcher --config config.yml刷新即可,无需手动复制。 - 断网中断留下的残文件:不用手动清。完整性校验(Content-Length 比对)会清理不完整文件,下次运行时自动补下。
- 线程是不是越大越好:不是。默认 5 线程、速率限制 2 请求/秒,稳妥够用;真需要提速再
-t提到 8 左右,过高反而容易触发限流。 - 只想要某段时间的作品:配置里填
start_time/end_time(YYYY-MM-DD),时间范围外的内容自动过滤,省流量省时间。 - 什么情况不适合你:如果你只想要"去水印单点下载"、对元数据归档和批量管理毫无需求,用任意网页工具都够;另外收藏夹模式
collect/collectmix只认当前登录 Cookie 对应账号且必须单独使用,直播录制仍是实验性功能,别把它当成主力方案。
下一步:三步把内容资产管起来
先用一条视频链接试跑,熟悉终端反馈;再整页搬一个博主主页,确认目录结构和清单文件符合预期;最后打开increase增量开关配上定时执行,让新增作品每天自动入库。半小时的手活交给 5 分钟的一条命令,你的本地内容库从今天开始自己长。
【免费下载链接】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),仅供参考