douyin-downloader 完整指南:抖音去水印批量下载工具,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 就是干这个的:粘贴链接、写一份配置,它就把无水印视频、图集、合集、音乐原声批量拉下来,自动按目录归档,下过的内容自动跳过。下面从"先看到结果"开始,带你 10 分钟跑通第一条下载。
先看结果:下载完的硬盘里长什么样
跑一次批量任务之后,Downloaded/目录里是这样一棵树:
Downloaded/ ├── download_manifest.jsonl # 每条作品的下载清单 ├── 作者昵称/ │ ├── post/ # 作品 │ │ └── 2024-12-30_视频标题_作品ID/ │ │ ├── 视频.mp4 # 无水印视频 │ │ ├── 封面.jpg │ │ ├── 音乐.mp3 │ │ └── 数据.json # 元数据 │ ├── like/ # 点赞内容 │ └── mix/ # 合集作者一层、模式一层、"日期_标题"一层,每个作品独占一个文件夹,想删哪条删哪个,互不影响。旁边还会生成一个dy_downloader.db数据库,记住所有下载过的作品,下次运行自动去重。
下图是桌面版(Douzy)的任务中心,命令行和它的后端是同一套逻辑,你能直观看到"批量任务跑完"是什么状态:主页、合集、单条各占一行,成功数和失败数一目了然,失败的点一下就能重试。
快速上手:从克隆到第一次下载成功
第一步:装好环境
要求 Python 3.8+,Windows / macOS / Linux 都能跑。
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt验收标准:最后一条命令执行完没有红色报错。
第二步:拿到 Cookie,配好初始文件
Cookie 是登录凭证,没有它很多内容根本请求不到。项目自带抓取脚本,跟着引导登录一次即可:
pip install playwright python -m playwright install chromium python -m tools.cookie_fetcher --config config.yml登录后回到终端按回车,Cookie 会自动写进配置文件。不想走自动流程,也可以从浏览器开发者工具里复制 Cookie,手动填进 config.example.yml 的cookies段。
cp config.example.yml config.yml⚠️ Cookie 是有有效期的。哪天下载突然大面积失败,第一反应应该是重新执行 cookie_fetcher,而不是怀疑配置。
验收标准:config.yml里cookies各字段不再是YOUR_xxx占位符。
第三步:填一条链接,跑起来
打开config.yml,把link换成你要的链接,number.post先设成 1 试水,然后:
python run.py -c config.yml验收标准:终端先打印本次配置,随后出现进度条,Downloaded/下出现作者文件夹,里面躺着一个无水印的.mp4。看到成功统计,第一条就跑通了。
核心配置项说明:config.yml 里这 10 个键必须会填
| 配置项 | 作用 | 建议值 |
|---|---|---|
link | 要处理的链接列表,支持多条 | 按需填写 |
path | 文件保存根目录 | ./Downloaded/ |
mode | 主页链接的处理模式:post / like / mix / music | 先只开post |
number | 各模式数量上限,0 为不限制 | 试跑设post: 1 |
increase | 增量开关,只下没下过的 | 长期使用设true |
thread | 并发线程数 | 5 起步,别急着拉满 |
retry_times | 单条失败重试次数 | 3 |
database/database_path | 开启 SQLite 去重,指定数据库文件 | true/dy_downloader.db |
video_quality | 画质档位,最高转码档或原画 | highest |
start_time/end_time | 按发布时间过滤,格式YYYY-MM-DD | 不需要就留空 |
两个值得多聊两句的:
database建议永远开着。去重逻辑是"数据库记录 + 本地文件名"双重校验,任何一路发现下过就会跳过。这也是增量模式能成立的前提——关了它,"每天跑一遍只拿新内容"就不存在了。
thread建议从小往大调,而不是反过来。5 是默认值,翻几倍未必更快:抖音对高频请求有限流,线程开太猛反而触发风控,表现为翻页只返回 20 条、成片失败。慢一点但稳定,比跑满速然后全部重来划算。
场景实战:三种最常见的用法
场景一:把一整个创作者主页打包存下来
想做什么:备份某个博主的作品、点赞内容和合集,一条主页链接全搞定。
怎么配:
link: - https://www.douyin.com/user/xxxx mode: - post - like - mix number: post: 0 # 0 = 不限制 like: 50 mix: 0怎么跑:python run.py -c config.yml,跨模式自动去重,同一个作品不会出现两次。
得到什么:作者文件夹下按post/、like/、mix/分好层,每条作品独立文件夹,几十条任务并发推进、失败自动重试。
场景二:每天定时同步,只拿新增内容
想做什么:关注的博主每天更新,你只想增量同步,不重复占硬盘。
怎么配:
increase: post: true like: true database: true # 增量依赖数据库记录,必须开怎么跑:配置一次,之后每天执行同一命令即可。数据库里有记录的直接跳过,本地文件丢了还会自动补下。
得到什么:文件夹只增不乱,历史内容一份不多一份不少,天然形成按天增长的本地档案。
场景三:单条视频,把周边资源一起留下
想做什么:下载某条视频,顺便留封面、原声和元数据,方便日后检索。
怎么配:
link: - https://v.douyin.com/xxxx/ cover: true # 存封面 music: true # 存原声音频 json: true # 存作品元数据 avatar: true # 存作者头像怎么跑:命令同上,四个开关默认全关,按需打开,文件会落在同一作品文件夹里。
得到什么:一个"自包含"的作品目录,视频、封面、音乐、数据各归其位。
故障排查:遇到这些症状先查这里
| 典型症状 | 处理方式 |
|---|---|
| 大面积请求失败、作品下不动 | 基本是 Cookie 过期,重跑python -m tools.cookie_fetcher --config config.yml |
| 主页翻页停在 20 条左右 | 触发翻页限流:确认browser_fallback.enabled: true、headless: false,浏览器弹出时手动完成验证,别急着关窗口 |
| 终端被进度条刷屏 | 保持progress.quiet_logs: true;需要排查时再加--show-warnings或-v临时看日志 |
| 想重新下载某条作品 | 删掉Downloaded/里对应的作品文件夹,并清掉 storage/database.py 生成的.db中那条记录,两件事缺一件都不触发重下 |
| 想查历史下载记录 | 用任意数据库工具打开dy_downloader.db,aweme表里有每条作品的下载时间、标题和作者 |
收尾建议:把这套流程用到长期
- 先用单条试水。
number.post设 1,确认文件、画质、目录都符合预期,再放开批量。 - 一套需求一份配置。"日常收藏"和"全量备份"分成两个 yml 文件,别在一个文件里来回改参数。
- Cookie 定期换新。它是整套流程里唯一会自己失效的零件,失败了先查它。
- 并发循序渐进。线程数从 5 起步,观察失败率再微调,风控来了反而更慢。
现在就可以 clone 下来,把第一条视频存进本地档案——管理自己的抖音内容库,比想象中省事。
免责声明:本工具仅供技术学习与个人数据管理使用,请在合法合规的前提下使用,尊重内容版权与创作者权益。
【免费下载链接】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),仅供参考