抖音批量下载无水印怎么做?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 是一款免费的抖音批量下载无水印开源工具。粘贴单条链接或整个创作者主页,内容就能无水印存到本地,重复任务自动跳过已下载的作品。适合想归档内容的普通用户,也适合需要拿数据做分析的重度用户。
一、项目速览:这套工具能帮你下载什么
douyin-downloader 走命令行执行任务,另有名为 Douzy 的桌面版把同一套后端包成了图形界面,粘贴链接即可排队下载。它的取源逻辑默认优先选无水印链接,并用 SQLite 数据库记录下载历史,重复运行只补新增内容。
| 能力 | 说明 |
|---|---|
| 无水印批量下载 | 覆盖视频、图文、合集、音乐(原声)四类内容,支持作者主页整页任务 |
| 去重与增量 | 磁盘已有主文件自动跳过,increase开启后同一配置反复跑只下新作品 |
| 附带产物 | 封面、背景音乐、作者头像、JSON 元数据均可按需开启 |
| 浏览器兜底 | 分页接口被限流时自动拉起浏览器,可手动完成验证后继续 |
| 可选扩展 | 评论采集、语音转写、完成通知、代理与重试,全部按配置开关 |
下载模式的具体策略实现在 core/user_modes/ 目录,Cookie 与令牌管理在 auth/ 目录,想读源码可以从这两处入手。
二、从克隆到首次下载:三步跑通
这一节解决“怎么装好并下出第一个文件”。全部步骤只有三条命令。
环境准备:装好 Python 与依赖
环境要求只有 Python 3.8 以上,Windows、macOS、Linux 都能跑。克隆代码并装依赖,顺带装好 Playwright 的浏览器内核(浏览器兜底功能依赖它):
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt pip install playwright playwright install chromium装完后把config.example.yml复制一份改名为config.yml,后续所有调整都落在这份文件上。
拿到凭证:自动获取 Cookie
抖音接口需要登录态,推荐用内置工具自动抓取,不用手动复制:
python -m tools.cookie_fetcher --config config.yml运行后会自动打开浏览器,在其中登录抖音,回终端按回车,Cookie 就写回配置了。⚠️ 登录态会过期,之后若任务批量失败,第一步就是重跑这条命令换 Cookie。已有 Cookie 的也可以直接在config.yml的cookies段手填。
首次运行:下出第一个作品
把config.yml里的示例link换成目标博主主页链接,先只保留mode: [post]、number.post: 1,让第一单尽量小。然后启动:
python run.py -c config.yml看到Downloaded/目录里出现作品文件夹,就算跑通了。所有参数可用python run.py --help查看,比如-v打开详细日志、-u追加链接。
三、配置速查:最常用的 8 个字段
配置项不用背,用到哪个查哪个。下面是覆盖日常场景的 8 个字段:
| 字段 | 作用 | 什么时候要改 |
|---|---|---|
link | 下载目标:单视频、主页、短链均可,可写多条 | 每接一个新任务 |
path | 文件保存目录,默认./Downloaded/ | 想换存放位置时 |
mode | 内容类型:post作品、like喜欢、mix合集、music音乐 | 选择要下载什么内容时 |
number | 每种模式的数量上限,填0就是全部 | 只想抓前几条时 |
increase | 增量开关:true跳过已下载作品 | 计划周期性重复执行时 |
start_time/end_time | 按发布时间筛选,格式YYYY-MM-DD,含结束当天 | 只要某一段时间的作品时 |
thread | 并发下载数,默认 5 | 网络不稳或下载变慢时,降到 3 |
video/cover/music/json | 控制是否保存视频本体、封面、音乐、元数据,默认只存视频 | 要归档完整资料时 |
四、实战:跑通 3 个典型任务
整站归档一位创作者的主页
解决什么:把某位创作者的作品和合集一次性存全,之后持续跟进新内容。
操作:link填该作者主页链接;mode写成post和mix两项;number里post填0表示不限量;把increase.post和increase.mix都设为true开启增量。跑python run.py -c config.yml。
跑完你会得到:该作者目录下按作品分文件夹,视频齐全,SQLite 留下下载记录;以后同一配置再跑,只补新发的作品。桌面版用户在这个页面上勾选内容类型、填数量上限后提交即可,界面如下:
只下某段时间发布的作品
解决什么:主页内容太多,只想要某个时间窗内的作品,省磁盘也省时间。
操作:start_time和end_time按YYYY-MM-DD格式填入起止日期(含结束当天);再配合number.post设一个条数上限做双保险;mode保持post。
跑完你会得到:目录里只有时间窗内的作品,文件夹名自带发布日期前缀,肉眼即可核对是否选对范围。
采集评论并转写语音,做内容分析
解决什么:让每个作品不只留视频,还留下可检索、可分析的文本数据。
操作:comments.enabled设为true,用max_comments限制每条评论数、include_replies控制是否抓二级回复;transcript.enabled设为true,默认模型为gpt-4o-mini-transcribe,密钥放在OPENAI_API_KEY环境变量里,不要写进配置文件。转写逻辑可参考 core/transcript_manager.py。
跑完你会得到:每个作品目录里多出_comments.json评论文件和 txt、json 两种格式的转写文本,视频、评论、文本一次备齐。
五、结果落在哪:目录结构与命名规则
默认folderstyle: true时,每个作品一个独立文件夹,层级是“作者目录 → 模式目录 → 作品目录”。作品文件夹名由filename_template控制,默认{date}_{title}_{id},可用变量包括{id}、{title}、{author}、{date}等;模板里必须包含{id},否则不同作品可能撞名。作者目录层由author_dir决定:nickname是纯昵称(默认),nickname_uid是“昵称_ID”,重名多的重度用户推荐后者。
Downloaded/ ├── download_manifest.jsonl └── 旅行摄影日记_MS4wLjAB.../ └── post/2026-06-15_跟拍攻略_7341.../ ├── 2026-06-15_跟拍攻略_7341....mp4 ├── _cover.jpg、_music.mp3(开启后才有) └── _data.json、_comments.jsondownload_manifest.jsonl是逐条追加的下载清单,每行一条 JSON,含作品 ID、标题、标签、文件路径等字段,做二次检索时直接查这个文件最方便。打开json开关后,作品目录里的_data.json还会存标题、发布时间、点赞数、作者信息等完整元数据。
六、遇到问题先自查:5 个高频坑
| 现象 | 可能原因 | 处理办法 |
|---|---|---|
| Cookie 失效,任务频繁失败 | 登录状态过期 | 重跑python -m tools.cookie_fetcher --config config.yml,建议每周检查一次 |
| 主页只取到少量作品就停 | 分页接口触发风控 | 保持browser_fallback.enabled: true且headless: false,在弹出浏览器里手动完成验证 |
| 下载慢、中途卡住 | 网络不稳或并发过高 | thread降到 3 左右;必要时在proxy填代理地址 |
| 文件名重名、作者目录混乱 | 模板缺{id},或两位作者昵称相同 | filename_template加上{id};author_dir改为nickname_uid |
| 磁盘空间吃紧 | 全量下载内容累积 | 用start_time/end_time圈定范围,number限制条数,定期迁移旧数据 |
douyin-downloader 把批量下载里最琐碎的事——无水印取源、增量去重、元数据落盘、目录组织——都做进了默认行为里,单条链接和整页主页走的是同一套流程,粘贴链接就能开始。上手成本基本就是一次克隆加一次 Cookie 登录,之后按配置速查表调字段即可。
⚠️ 使用边界:请仅将本工具用于个人学习、研究与数据备份目的,遵守平台规则,尊重创作者的合法权益。
【免费下载链接】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),仅供参考