保姆级教程:用 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 就是来解决这个问题的——一款完全免费的开源工具,主打无水印下载,支持视频、图集、合集、音乐(原声)和作者主页一键批量下载。这篇文章不堆术语,用大白话带你从零跑通,再教你怎么把它玩出花样。
先讲一个真实的下午
阿凯是个做影视解说的博主,每周要剪 4 条视频。他的素材来源很简单:刷抖音,看到合适的片段就保存。直到有一天他意识到,自己已经在这个"手动保存"的流程上浪费了整整一个下午。
他当时的状态是这样的:
- 遇到喜欢的视频,先点分享,复制链接;
- 打开某个网页转换工具,粘贴链接,等广告加载完;
- 下载下来的文件还带着水印,画质被压过一道;
- 想看博主往期作品?得一条条翻、一条条存;
- 想找某首歌做 BGM?翻半天翻不到原声下载入口。
一天下来,真正存下来的没几个,时间倒是耗掉大半。你大概也经历过类似的折腾。而 douyin-downloader 这类工具存在的意义,就是把这些步骤压缩成一条命令的事。
那些年我们踩过的下载坑,到底坑在哪
与其直接夸这个工具多好,不如先把它解决的问题摆出来。你平时保存抖音内容,通常逃不开下面几种办法,它们各自都有硬伤:
| 常用办法 | 看起来的样子 | 实际的问题 |
|---|---|---|
| 录屏 | 简单粗暴 | 画质打折,自带水印,还占手机内存 |
| 在线转换网站 | 复制粘贴就行 | 广告多,速度慢,视频被二次压缩,隐私也说不清 |
| 浏览器插件 | 点一下就好 | 频繁失效,插件市场下架后就没得用 |
| 手动逐个保存 | 最可控 | 一个两个还行,几十上百个就崩溃了 |
这些坑的本质,是"工具没有跟抖音的接口直接对话"。而 douyin-downloader 走的是另一条路:它直接调用抖音的接口,解析出无水印的原始视频地址,再按原始分辨率下载下来。水印问题、画质问题、批量问题,天然就不存在了。
动手之前,先把环境和代码准备好
整个准备过程大概三分钟,不需要任何编程基础。唯一的前提是电脑上装了 Python(3.8 及以上版本,官网下载安装即可,装的时候记得勾选"Add Python to PATH")。
第一步,把项目代码拿到本地:
# 把项目克隆到当前目录 git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader # 进入项目文件夹 cd douyin-downloader第二步,安装依赖。项目核心只需要一个文件就能搞定:
# 根据 requirements.txt 安装全部依赖 pip install -r requirements.txt如果之后想用"浏览器自动获取 Cookie"或"翻页兜底"这些进阶功能,再多装一个 Playwright 即可,暂时用不到可以跳过。
抖音Cookie配置教程:三种方式,选一个顺手的
Cookie 是什么?一句话解释:它是网站发给你的一张"通行证",证明你是登录状态。抖音的大部分内容需要登录才能访问,工具要拿到这张通行证,才能替你"以登录身份"去请求数据。配置 Cookie 是使用本工具的前提,但好在有三种方式,丰俭由人。
方式一:自动获取(最省事,推荐)
项目自带一键脚本,会打开浏览器让你扫码登录,登录完成后自动把 Cookie 写进配置文件:
# 自动打开浏览器,扫码登录后自动保存 Cookie python cookie_extractor.py整个过程是半自动的,你只需要做"掏出手机扫码"这一个动作。
方式二:手动从浏览器复制
如果你平时就在网页版抖音登录着,可以手动提取:
- 浏览器打开抖音网页版并登录;
- 按 F12 打开开发者工具,切到 Network(网络)面板;
- 刷新页面,随便点开一个请求;
- 在请求头里找到 Cookie 字段,整段复制下来;
- 填进配置文件,或者用命令行参数传给工具。
项目里也提供了一个辅助脚本get_cookies_manual.py,可以按提示逐步完成。
方式三:填入关键字段
抖音的 Cookie 里有几个关键字段(msToken、ttwid、sid_guard等),你也可以只填这几个值。配置文件config.example.yml里预留了对应位置,复制一份配置文件后照着填就行:
# 复制配置模板,得到自己的配置文件 cp config.example.yml config.yml三选一,走到这一步,你的工具就已经"能进门"了。
第一次下载成功,是什么体验
配置好之后,打开配置文件,把想下载的链接填进去:
# 支持多个链接,可以写视频短链,也可以写作者主页 link: - https://v.douyin.com/你复制的视频链接/ # 保存到哪个目录 path: ./Downloaded/ # 是否同时下载音乐、封面和元数据 music: true cover: true json: true保存文件后运行:
# 按配置文件开始下载 python DouYinCommand.py屏幕上会弹出命令行界面,显示下载配置、进度条和统计结果。整个过程大概几秒钟,下载完成后去Downloaded文件夹里找文件就行。
两条腿走路:V1.0 和 V2.0 怎么选
项目里有两个入口文件,很多人第一次看到会犯选择困难症。其实判断标准很简单:下单个视频用 V1.0,批量拉作者主页用 V2.0。
| 对比项 | V1.0 稳定版(DouYinCommand.py) | V2.0 增强版(downloader.py) |
|---|---|---|
| 单个视频 / 图文下载 | 稳定正常 | 偶尔受接口影响 |
| 作者主页批量下载 | 支持 | 主力场景,体验最佳 |
| Cookie 管理 | 手动配置 | 支持自动获取与刷新 |
| 上手门槛 | 改配置文件即可 | 需了解命令行参数 |
| 适合谁 | 偶尔存几条的轻度用户 | 做素材库、追更博主的重度用户 |
V2.0 的典型用法是命令行直传参数,不用改配置就能跑:
# 批量下载某个作者主页的全部作品 python downloader.py -u "https://www.douyin.com/user/主页地址" # 顺便自动获取 Cookie,一条命令全搞定 python downloader.py --auto-cookie -u "https://www.douyin.com/user/主页地址" # 指定保存路径 python downloader.py -u "链接" --path "./my_videos/"进阶玩法一:作者主页一键批量下载,做素材库的关键
很多人的真实需求不是存一两条视频,而是"这个博主的作品我都想要"。这正好是 V2.0 的看家本领。
配置文件里通过mode决定下载哪些内容,number控制数量:
link: - https://www.douyin.com/user/目标博主主页 # 支持多种模式组合:post 发布作品 / like 点赞作品 / mix 合集 / music 音乐 mode: - post - like # 0 表示不限制数量;也可以限定每个作者最多下载多少 number: post: 100 like: 0想下载单个合集或单个音乐,同样只需要改链接:
# 下载单个合集(合集链接) link: - https://www.douyin.com/collection/合集ID/ # 下载单个音乐(原声) link: - https://www.douyin.com/music/音乐ID/下载完成后的文件会被自动归档:每个作者一个文件夹,每部作品一个子文件夹,里面是视频、封面、音乐、JSON 元数据各归其位,文件名带上发布日期,一眼就能看清时间线。
进阶玩法二:增量下载与自动去重,追更不重下
追更博主的人最怕一件事:上次下了 100 条,这次更新了 5 条,结果重跑一遍又下载了 100 条。项目用 SQLite 数据库解决了这个问题。
- 自动去重:每个作品的 ID 会记录在数据库里,下次遇到同样的作品直接跳过;
- 增量下载:开启
increase后,只下载"上次之后新增"的内容,老作品不会重复占用带宽。
# 开启数据库记录(默认开启,去重和增量的基础) database: true # 增量下载开关 increase: post: true # 只下载主页新增作品 like: false # 点赞列表不做增量 # 时间筛选:只要指定时间段内的内容 start_time: "2026-01-01" end_time: "2026-08-01"对于做数据分析和内容研究的人来说,json: true加上数据库记录,等于在本地攒了一份带完整元数据(点赞数、发布时间、评论信息等)的样本库。
进阶玩法三:直播录制、热搜榜单和桌面客户端
除了常规下载,这个项目还有几个容易被忽略的隐藏能力:
- 直播录制:链接填直播间地址即可录制,主播下播后保留已录数据,FLV 格式可直接播放;
- 热搜榜抓取:命令行加
--hot-board参数,可以把当天抖音热搜榜导出成 JSONL 文件,做选题参考很实用; - 关键词搜索:
--search "关键词"可以把搜索结果批量落盘; - 桌面客户端:项目还基于同一套后端做了桌面版(Douzy),粘贴链接、检测、下载全程图形化操作,适合不想碰命令行的用户。
批量下载过程中,界面会实时刷新每个任务的进度,哪些已跳过、哪些在下载、哪些完成,一目了然:
下载出问题怎么办:五个高频故障排查清单
工具用久了总会遇到状况,这里给出一份可以直接照着做的排查清单。
1. 提示 Cookie 无效或登录过期Cookie 会过期,属于正常现象。重新跑一遍自动获取脚本,或者手动更新 Cookie 字段即可。
2. 某个视频一直下载失败先单独复制这个链接用 V1.0 试一次,排除链接本身的问题;再用手机打开确认视频没有被删除或设为私密。
3. 批量下载中途卡住检查网络是否稳定,适当降低并发线程数(配置文件里的thread,默认 5,改成 3 试试),减少同时下载的数量。
4. 下载下来是黑屏或文件损坏工具内置了完整性校验(比对 Content-Length),不完整的文件会自动清理并重试。如果反复损坏,多半是网络波动,换个时间段再跑。
5. 想看具体报错信息运行命令时加上-v或--show-warnings参数,把详细日志打开,报错原因会直接打印出来;项目根目录的downloader.log里也有完整记录。
把工具变成你的日常习惯
回顾一下这次旅程:我们从阿凯的"手动保存一下午"说起,看到了录屏、在线转换这些老办法的局限,然后一步步完成了环境准备、Cookie 配置、首次下载,又解锁了主页批量下载、增量去重、直播录制这些进阶玩法。
如果你也想摆脱手动保存的循环,行动路径其实很短:
- 克隆项目到本地,安装依赖;
- 配好 Cookie(推荐用自动获取脚本,扫码一次搞定);
- 复制一条链接,跑通第一次下载;
- 再放一个作者主页,感受批量下载的畅快;
- 按需开启增量、去重、时间筛选,让工具自己干活。
最后照例提醒一句:这个工具把"下载"这件事变得很轻松,但请把它用在个人学习、研究和合理引用的范围内,尊重原创作者的版权,不用于商用或二次传播。合规使用,才能用得长久。
项目地址:https://gitcode.com/GitHub_Trending/do/douyin-downloader开源协议:MIT License适用平台:Windows / macOS / Linux依赖环境:Python 3.8+(批量下载与进阶功能建议配合 Playwright)支持内容:视频、图文、合集、音乐、作者主页、直播、评论采集
【免费下载链接】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),仅供参考