news 2026/8/16 10:40:22

douyin-downloader使用指南:从零搭建抖音视频批量下载、去水印与直播回放保存的完整方案

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
douyin-downloader使用指南:从零搭建抖音视频批量下载、去水印与直播回放保存的完整方案

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 是一个开源抖音下载器,支持单条视频、图集、合集、音乐与直播回放的本地保存,自带去水印、SQLite 去重、进度显示和浏览器兜底。接下来的内容会按照"为什么用它 → 第一次下载 → 按目标找玩法 → 参数速查 → 避坑 → 进阶延伸"的顺序展开,让你用一个晚上建立起自己的本地内容库。

一、先做一道选择题:手动下载还是交给工具

把抖音内容搬到本地,通常有三条路:

方案单条视频批量主页直播回放去水印命名规范增量去重
浏览器右键另存可以不现实不可以混乱
在线解析网站可以多数不支持很少支持部分
douyin-downloader支持支持支持支持模板化SQLite 记录

手动下载在"偶尔存一条"的场景下够用,但一旦涉及两位数以上的作品,痛点会立刻放大:文件名千奇百怪、作者混在一起、重复内容反复占用空间。工具的价值不在于替代你的判断,而在于把"下载、命名、归类、去重"这套重复劳动打包成一条命令。

项目本体放在仓库根目录下,核心源码在core/目录,包含下载器工厂、URL 解析、各类型下载器与重试执行器;storage/负责数据库与文件管理;utils/naming.py处理命名模板。想看实现细节,直接从这些目录入手即可。

二、四步完成第一次下载:最小可行演示

拿到项目的路径只有两条:git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader之后pip install -r requirements.txt。装完依赖,往下走四步。

第一步:准备登录态。抖音接口需要 Cookie,手动复制粘贴既麻烦又容易漏字段。项目自带的tools/cookie_fetcher.py会拉起浏览器让你完成登录,然后自动把 Cookie 写入配置:

python tools/cookie_fetcher.py --config config.yml

第二步:复制配置模板。根目录的config.example.yml是完整的参数说明,建议复制一份再改:

cp config.example.yml config.yml

第三步:填入链接。打开config.yml,把link下的占位链接换成你真正想保存的内容地址,视频页、用户主页、直播页都支持:

link: - https://www.douyin.com/video/7412345678901234567 path: ./Downloaded/ mode: - post

第四步:运行。一条命令开始下载:

python run.py -c config.yml

第一次跑通后,你会看到类似下面的结果——进度、耗时、成功与失败数量一目了然:

下载完成后,内容按作者与类型自动分好文件夹,每一条作品还附带 JSON 元数据(作者、发布时间、标题等),方便日后检索:

三、按目标找玩法:你要的是哪一种结果

工具的功能很多,与其逐个记忆,不如从"我想得到什么"出发,反过来找对应的配置。

想完整备份一位创作者的主页

这是最常用的场景。抖音的创作主页一般包含四种内容:发布的作品、点赞过的内容、合集、音乐(原声)。在配置里把这些模式全开,并指定每类的数量上限:

link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post - like - mix - music number: post: 50 like: 20 mix: 10 music: 20

配合increase增量开关和database: true,第二次运行只会补齐新增作品,不会把整个主页重新拉一遍。author_dir支持nicknamesec_uidnickname_uid三种作者目录命名方式,重度用户建议选nickname_uid,既直观又不会因作者改名而分裂目录。

想留住一场直播

直播是抖音最难保存的内容类型——播完基本就没了。把直播间的链接放进link,开启live配置段即可:

live: max_duration_seconds: 0 # 0 = 一直录到主播下播 idle_timeout_seconds: 30

max_duration_seconds设为 0 表示录到主播下播,也可指定具体秒数只录一段时间。录制时会先探测直播流地址与清晰度选项,主播中途下播也会保留已录数据:

想收集某位博主的背景音乐

把链接指向用户主页,mode里带上musicnumber里给出music的条数,原声作品会被单独归入音乐目录,适合给视频剪辑攒素材库。

想分析评论区反馈

打开comments开关,每个作品会额外生成一份*_comments.json,包含评论正文、作者等信息:

comments: enabled: true include_replies: false max_comments: 0 # 0 = 不限制数量 page_size: 20

这层数据对做内容运营或用户调研的人比较有用,普通用户保持关闭即可。

四、参数速查表:常用配置项一览

不需要背,收藏本文,用到时回来查:

配置项作用常用取值
link待下载链接列表,支持视频/主页/直播间/短链数组形式
mode/number下载模式与各模式数量上限post / like / mix / music
thread并发线程数,影响下载速度5 ~ 10
retry_times单条失败重试次数3
increase各模式的增量下载开关true / false
databaseSQLite 去重与历史记录true
filename_template文件命名模板,必须包含{id}{date}_{title}_{id}
folder_template作品子目录命名{date}_{title}_{id}
start_time/end_time只下载时间范围内的作品"2024-01-01"
proxyHTTP 代理,网络受限时使用http://127.0.0.1:7890
browser_fallback接口被限时用浏览器兜底抓取enabled: true

一个容易忽略的细节:filename_template里至少要保留{id},否则标题相同(例如两期节目同名)会互相覆盖。

五、三条锦上添花的扩展命令

除了常规下载,CLI 还内置了几个独立子命令,适合特定场景。

拉热搜榜。导出抖音当前热搜前 30 条到本地 JSONL 文件,做选题或追热点时有用:

python run.py --hot-board 30

关键词搜索。按关键词搜索作品并导出结果,想摸底某个话题的内容量时可以试试:

python run.py --search "猫咪" --search-max 100

REST API 服务。装好可选依赖后,可以把下载器变成 HTTP 服务,供其他系统调用:

pip install fastapi uvicorn python run.py --serve --serve-port 8000

批量下载过程中,终端会实时显示每个作品的进度条与耗时,长任务挂着看也不慌:

六、避坑指南:几个新手容易踩的坑

一次只能拿到 20 条作品?这是抖音接口的翻页限制,不是 bug。确保browser_fallback.enabled: true,程序会在接口受限时切换到浏览器模式继续抓取;如果弹出验证码,手动完成一次即可。

Cookie 失效、下载报登录错误?重新跑一遍python tools/cookie_fetcher.py --config config.yml,工具会重开浏览器让你登录,完事后自动更新配置。

下载内容重复?打开increase增量开关并保持database: true,SQLite 会记录已下载作品的 ID,重复内容直接跳过。

想要的通知没收到?notifications支持 bark、telegram、webhook 三类渠道,配置好 provider 后,成功与失败都会推送摘要。

七、如果命令行让你头疼:试试桌面版

命令行工具适合自动化与批量操作,但如果你更习惯图形界面,项目还配套了一款桌面版应用 Douzy,它复用同一套后端,界面上的核心入口是下载、批量下载、任务中心与作品档案四个模块。粘贴链接即可开始,任务状态、今日成功/失败数量都有可视化展示:

关注列表同步、文件命名规则设置、下载历史档案也都做了可视化处理,对不熟悉终端操作的用户友好很多。命令行与桌面版共用底层逻辑,切换成本很低。

八、写在最后:从一条视频开始

回到开头那个问题。工具能解决的,是"内容还在的时候,把它留下来"这件事。它不能替你决定存什么、删什么,但可以保证:你想留的,一定能留成结构清晰、命名规范、可随时翻阅的本地文件。

建议的入门路径很简单:先存一条视频,跑通流程;再试着备份一位创作者的主页;然后按需开启增量、评论或直播录制。完整参数说明可以随时回看根目录的config.example.ymlUSAGE.md

最后提醒一句:下载的内容请仅用于个人学习与备份,尊重创作者的版权与平台规则,不要二次传播或商用。好的工具配合正确的使用方式,才能让收藏这件事长久且体面。

【免费下载链接】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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/16 10:34:05

Mac系统adb环境配置全攻略:从原理到实战,告别command not found

1. 项目概述:为什么Mac上的adb环境配置是个“技术活”? 如果你是一名在Mac上搞Android开发、测试,或者喜欢折腾智能设备(比如电视盒子、智能手表)的玩家,那么adb(Android Debug Bridge&#xff…

作者头像 李华
网站建设 2026/8/16 10:33:25

如何通过Cursor将顶级AI编程助手稳定高效融入开发工作流

最近在技术社区里,有一个现象挺有意思:一边是很多开发者还在为API调用成本、模型配额和“免费额度用完了怎么办”而精打细算,小心翼翼地使用着各种“平替”模型;另一边,却总能看到一些人,仿佛手握“无限火力…

作者头像 李华
网站建设 2026/8/16 10:27:29

易灵思Titanium 系列配置

易灵思Titanium 系列配置 关于配置 Titanium 系列 FPGA 本文档介绍如何配置 Titanium 系列 FPGA。这些 FPGA 包含易失性的配置 RAM(CRAM)—— 用户必须在上电后、核心进入正常工作前,通过比特流将所需的逻辑功能配置到 CRAM 中。比特流大小 比…

作者头像 李华
网站建设 2026/8/16 10:22:41

Ventoy启动失败?详解安全启动原理与关闭方法

1. 项目概述:当Ventoy遇上安全启动 如果你最近尝试用Ventoy这个“神器”U盘来安装系统,却在电脑启动时卡住,屏幕上可能只显示一个黑屏,或者提示“Security Violation”(安全违规),甚至直接跳回B…

作者头像 李华