抖音批量下载完整指南:无水印视频、合集、音乐一个配置搞定
【免费下载链接】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 是一款开源的抖音下载工具,支持视频、图文、合集、音乐原声的批量下载,一个配置文件就能把博主主页的作品全部归档。它内置去重、重试与浏览器兜底,适合不想再手动逐条保存内容的创作者和学习者。
它适合哪些人
剪辑师:你是否遇到过想借用某条视频的 BGM,平台下载却带水印、音频文件无法单独保存的情况?music 模式可以直接抓取原声音频,还能限定首数。
学员 / 教程学习者:你是否关注了一位博主的系列教程,想回看时只能在 App 里从头滑?post 与 mix 模式可以一次拉下对方的发布作品和合集,文件按作者和发布时间自动整理。
内容归档者:你是否需要在多个账号间反复保存喜欢的内容?工具支持多链接、多模式组合任务,重复运行不会产生重复文件。
🚀 三步装好并跑通抖音下载器
环境只需要 Python 3.8+,macOS、Linux、Windows 均可。
第一步,获取代码并安装依赖:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt第二步,自动获取 Cookie。运行下面命令后会弹出浏览器,登录抖音,回到终端按 Enter,Cookie 会直接写入配置:
python -m tools.cookie_fetcher --config config.yml第三步,在项目目录准备一个 config.yml,填好链接和模式后运行:
python run.py -c config.yml如果只是想先试试批量下载某位博主的发布作品,下面这份最小配置就够用:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx path: ./Downloaded/ mode: - post number: post: 50 thread: 5number.post: 50表示下载最近 50 条,改成 0 即不限数量;thread控制并发数。桌面客户端 Douzy 则提供了图形界面,粘贴链接即可开始:
核心功能详解
选对模式,批量下载
工具提供六种模式:post(发布作品)、like(点赞作品)、mix(合集)、music(音乐原声)、collect(收藏夹)、collectmix(收藏的合集)。你只需填博主主页链接和模式名,抓取逻辑由它完成。前四种可在同一任务里叠加,跨模式的作品会按 ID 自动去重,不会下载两次;后两种收藏夹模式需要已登录的 Cookie,且只能单独运行。这意味着不管你想抓博主的"产出"还是"品味"(他点过赞的内容),一个任务就能覆盖。
无水印、最高清,下载还有保障
挑选源时工具自动优先无水印视频,存在多档码率时选最高的一档。下载过程中,每个文件都会做 Content-Length 完整性校验,不完整的自动清理重下;网络失败按 1s、2s、5s 指数退避重试,并默认限流 2 请求/秒。对几十上百条的批量任务来说,你不必盯着屏幕等,半成品文件会被自己处理掉。
增量下载,跑多次只取新内容
把increase.post设为 true 后,下次运行会跳过本地已存在主文件的条目,只抓新内容。判断依据是磁盘上的文件:删掉某个媒体文件,下次就会补下;SQLite 数据库只作历史记录,不参与跳过判断。这意味着你可以把任务挂成定期运行,让本地库始终跟上新发布的作品,而不重复浪费流量。
浏览器兜底,翻页被限也能过
抖音主页翻页存在风控,极端情况 API 只能翻到约 20 条。开启browser_fallback并保持headless: false,工具会自动启动浏览器页面,遇到验证码时你手动完成即可继续翻页。风控场景下不用自己写脚本绕,流程上走得通。
实战案例
案例一:归档某位博主的全部教程作品
目标:把关注的博主的教程系列和合集完整保存,文件按发布时间排序。做法是填主页链接,选两种模式,数量设 0 表示全量,并打开增量开关:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post - mix number: post: 0 mix: 0 increase: post: true效果:作品分别存到Downloaded/作者名/post/和mix/,每条作品一个独立目录,内含视频、封面、原声与元数据 JSON;目录名以发布日期开头(而非下载时间),一眼看出批次,旁边还有download_manifest.jsonl清单记录每条的标题、标签和文件路径。
案例二:收集 BGM 素材并自动更新
目标:作为剪辑师,从某个账号收集音乐原声,以后只取新增的。做法:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - music number: music: 100 increase: music: true效果:最多 100 首原声 MP3 存入music/目录,音乐链接优先取直连音频文件,取不到时回退到使用该音乐的第一条作品。重复运行同一任务会跳过已有歌曲,适合挂成定时任务保持素材库常新。
常见问题
只能抓到 20 条作品怎么办?
现象:批量下载主页时停在 20 条左右。原因:抖音翻页风控拦截了 API 分页。解法:开启browser_fallback.enabled: true并保持headless: false,在弹出的浏览器窗口里手动完成验证,不要过早关闭窗口。
Cookie 失效导致下载失败怎么办?
现象:批量失败或返回空数据。原因:Cookie 有时效,过期后接口不认。解法:重新运行python -m tools.cookie_fetcher --config config.yml,再次登录后自动写入新 Cookie。
如何强制重新下载?
现象:删了文件重跑,工具却不重下。原因:去重是"数据库记录 + 本地文件"双检查,文件还在就跳过。解法:删除本地对应作品目录(目录名含作品 ID);个别情况再同步清理数据库中的记录,两种方式配合使用即可。
技术与生态速览
项目采用模块化结构:core 负责下载主流程与 URL 解析(源码见 core/),storage 管理文件与 SQLite 数据库(storage/),auth 管理 Cookie,control 负责限速与重试,并配有 CI 自动测试和 Dockerfile 一键部署。加装 fastapi 与 uvicorn 后还能以 REST API 服务模式运行,供其他程序提交下载任务。项目更新活跃,近期两个变化值得注意:文件名日期从"下载时间"改为作品"发布时间",并新增独立下载清单download_manifest.jsonl,本地库因此更好检索。想深入了解全部配置项,可阅读完整中文文档 README.zh-CN.md。
写在最后
Douyin Downloader 把"保存抖音内容"从手动逐条操作变成了一份可以挂着跑的配置:无水印、自动去重、增量更新,遇到风控还有浏览器兜底。如果你手头就有想归档的内容,按上面三步先跑一个 50 条的小任务,确认目录结构和文件没问题,再放大到全量归档。
合规提示:本工具仅用于个人使用与学习交流,请遵守平台规则,尊重创作者版权,不要将下载内容用于二次分发或商业用途。
【免费下载链接】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),仅供参考