抖音批量下载无水印保存: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 是一个开源的命令行工具,用于抖音无水印视频保存和主页批量下载。它从分享链接里取出无水印原画视频、原声音乐、封面和元数据,也能把某个创作者主页的作品按你的数量要求整批落到本地目录。如果你需要把一位博主的作品长期留档,或者只备份某个合集,用它就够了。
🧭 能力总览:这个工具能做什么
先说清楚边界,再谈操作。它的价值清单如下:
- 无水印原画视频→ 直接取原画播放地址,画面上没有平台水印
- 视频 / 图集 / 合集 / 原声页四种链接都认→ 同一套命令处理不同内容类型,工具会自动识别链接指向
- 主页批量下载→ 贴一个主页链接,自动翻页抓取作品,数量上限可配
- 原声音乐与封面单独保存→ 每条作品可额外得到独立音频文件和封面图
- 元数据 JSON→ 标题、作者、统计信息随作品一起落盘,方便后续检索
- SQLite 去重→ 本地数据库记录已下载作品,再次运行自动跳过
- 重试与接口兜底→ 抓取失败自动重试;增强版在主接口受限时会尝试备用接口
- 直播链接→ 解析直播间信息并保存 JSON,可与其他录制手段配合
🚶 最小可用路径:先拿到第一个视频
整条路径就四步:拿代码、装依赖、准备 Cookie、跑一条链接。
1. 克隆并安装依赖
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt要求 Python 3.8+,没有的话先装。
2. 准备 Cookie
抖音接口需要登录态,Cookie 只有两种来源,二选一:
# 自动:弹出浏览器,扫码登录后自动提取并写入配置 python cookie_extractor.py # 手动:按屏幕提示用浏览器 F12 复制 Cookie,再按向导粘贴 python get_cookies_manual.py不想装 Playwright 就选手动版;Cookie 只保存在你自己的机器上,不要分享给别人,也不要随代码提交。
3. 写一份最小配置
仓库里带了config.example.yml,复制为config.yml后只保留必要字段即可:
link: - https://v.douyin.com/xxxxx/ # 换成你的分享链接 path: ./Downloaded/ music: true # 额外下载原声 cover: true # 额外下载封面 json: true # 保存元数据4. 运行
python DouYinCommand.py它会读取脚本同目录下的config.yml,完成后在./Downloaded/里得到视频、音频、封面和 JSON。首次运行建议只放一条链接,确认整个链路通了再加量。
图:命令行运行 douyin-downloader 的下载过程,链接、路径确认后自动开始
📋 常见任务怎么做
单条链接:不想改配置文件时
加--cmd True进入纯命令行模式,所有参数走命令行:
python DouYinCommand.py --cmd True -l "https://v.douyin.com/xxxxx/" -p ./Downloaded -t 5-l是链接(可传多次),-p是保存目录,-t是线程数。-m/-c/-a/-j分别控制音乐、封面、头像、JSON 的开关,默认全开。
主页批量下载
这是它和"单条下载脚本"拉开差距的地方。增强版入口专门优化了主页场景:
python downloader.py -u "https://www.douyin.com/user/MS4wLjABAAAAxxxx" -p ./Downloaded # 还没配 Cookie 时,让它自动获取后接着下 python downloader.py --auto-cookie -u "https://www.douyin.com/user/MS4wLjABAAAAxxxx"也可以走配置文件模式,控制下载量和线程:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post # post=发布的作品;like=喜欢的作品 number: post: 50 # 只下 50 条;0 表示全部 thread: 5只想抓最近一个月的话,再补两行:
start_time: "2026-07-01" end_time: "2026-07-31"合集与原声页
链接本身就是合集页或原声页时,工具自动识别,不需要改mode,数量上限由number里对应的mix/music控制。
直播链接
直播链接会走直播间解析,把直播间信息保存为 JSON 落到live/目录,适合先做信息采集,再配合录制工具使用。
图:douyin-downloader 处理抖音直播链接时的解析过程
只要视频,别带多余的
不想要音频或封面时,把对应开关关掉即可:
music: false cover: false⚙️ 把重复劳动自动化
下过几次之后,真正省时的是下面这几个开关,都写在config.yml里。
增量下载:数据库打开的前提下,把对应模式设为增量,再次运行同一主页时,已下过的作品会被数据库直接跳过,只补新的:
database: true increase: post: true数量封顶:number各项写 0 就是全部,写成具体数字就是封顶,适合先小批量验证再放开。
时间窗口:start_time/end_time限定发布日期区间,避免把几年前的旧内容全拉下来。
目录风格:folderstyle: true时每条作品一个子目录,视频、音频、封面、JSON 收在一起,后期整理成本低。
下载过程中的进度和每条作品的状态都会实时打在控制台,方便盯进度:
图:批量下载执行中,控制台按作品逐条输出抓取与保存进度
🗂️ 数据与资产的沉淀
下完不等于结束,这个工具留下的东西可以二次利用:
- 目录即档案:默认结构是
下载目录/user_昵称_用户ID/post/,主页、合集、单条作品的产物分开存放,文件名里的信息够你按创作者归档 - JSON 元数据:每条作品的标题、作者、发布时间都在 JSON 里,想按主题检索时,直接对这些文件做全文搜索
- SQLite 数据库:开启
database后,已下载作品记在本地数据库(表如t_user_post、t_mix等),增量模式就依赖它。想核对记录时可以用 sqlite3 打开看一眼:
sqlite3 数据库文件 ".tables"数据库文件是增量下载的记忆体,备份时建议和下载目录放在一起。
🔍 出问题时怎么定位
大部分失败集中在两类原因:Cookie 和风控。按症状对号入座:
| 症状 | 大概率原因 | 处理 |
|---|---|---|
| 提示未登录、403、链接解析不出内容 | Cookie 过期或缺失 | 重新跑python cookie_extractor.py;有效期大约 7~30 天,隔段时间更新一次 |
| 主页只抓到几十条就停 | 翻页触发风控 | 降线程(thread: 2~3)重试;增强版会自动尝试备用接口,多数情况重跑即可补齐 |
| 个别作品反复失败 | 单条请求抖动 | 工具默认最多重试 3 次;开启增量后重跑,只补缺的那几条 |
| 改了配置没生效 | 读的不是你想的那份配置 | 基础版默认读脚本同目录的config.yml;增强版用-c显式指定配置文件 |
| 下载中断、想接着下 | 网络波动 | 直接重跑即可,增量 + 数据库会跳过已完成的,不用手工对账 |
排查时先看日志里"正在请求的链接"和后续错误行,基本能定位是解析阶段还是下载阶段出的问题。核心抓取逻辑在apiproxy/douyin/目录下,想看实现可以从douyin.py入手。
🧱 边界与长期用法
几件需要摆正的事:
- 用途限于个人:下载的内容用于个人收藏、学习研究,不要二次上传分发,更不要商用。创作者的作品版权归原作者,留档和传播是两回事。
- 别滥用请求:线程数保持默认或略低,避免短时间内高频请求。工具本身做了重试和兜底,但风控不是为恶意频率设计的。
- Cookie 是敏感信息:它等同于你的登录态,只放本地配置,不进代码仓库,不发给别人。
长期跑下来的两个习惯:
- 固定目录 + 固定配置:给常用需求(如"某创作者主页")配一份专用
config.yml,路径固定,重复执行只改链接 - 定期增量:隔一段时间跑一次
increase增量,新作品自动补上,旧内容不重复下载;数据库和下载目录定期打包备份
✅ 从"会用"到"用顺手"
两个建议就够了:先用一条链接把链路跑通,再上主页批量;把"每周增量一次"变成定时习惯,而不是每次全量拉取。做到这两点,它就从一个下载脚本变成了你的抖音内容归档流程。
【免费下载链接】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),仅供参考