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 是一款免费的开源抖音无水印批量下载工具,桌面端叫 Douzy,粘贴链接就能把创作者主页、关注列表、收藏夹归档到本地,并用 SQLite 记录历史自动去重。适合整理内容的普通用户,也适合做数据分析的重度用户。这篇教程按任务顺序推进:先把环境跑起来,再拿到登录凭证,跑通第一条链接,最后扩展到批量场景和本地管理。
先看你拿到的能力清单:
| 能力 | 你能做什么 |
|---|---|
| 无水印下载 | 视频、图文、合集、音乐(原声)四类内容 |
| 批量归档 | 作者主页作品与合集一次抓完 |
| 增量去重 | 数据库加磁盘检测,重复运行只补新增 |
| 浏览器兜底 | 分页接口被限流时自动拉起浏览器验证 |
| 数据扩展 | 评论采集、语音转写、完成通知按需开启 |
| 接口化 | --serve可启动 REST API 服务 |
🧩 三步装好依赖
先把环境跑通,你只需要 Python 3.9 以上,Windows、macOS、Linux 都能跑。命令行版专注抖音;如果还要下载 TikTok、YouTube 等其他平台,用 Douzy 桌面版,它和 CLI 共用同一套后端。
下面这条命令把项目代码拉到本地并装上全部依赖,没有任何报错输出就是成功:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt装完后确认一下python --version是否 ≥ 3.9,报错多半是 pip 装到了旧版本环境里。
🔑 浏览器里登录一次,把 Cookie 凭证拿到手
先拿 Cookie(一组浏览器登录凭证,用来向抖音证明身份),否则接口很快就会限流。
第一条命令把示例配置复制成正式文件,第二条会自动弹出一个浏览器窗口:
cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml在弹出的浏览器里登录抖音,回到终端按回车,Cookie 就自动写进 config.yml,不需要你手动复制任何字符。
⚠️ Cookie 会过期,建议每周重新跑一次第二条命令刷新;已有 Cookie 的话也可以直接手填到配置的 cookies 段。
▶️ 跑通第一条链接:从单个创作者主页开始
别急着批量,先跑通一个主页确认链路没问题。只需改四个字段,其余保持默认:
| 字段 | 作用 | 推荐值 |
|---|---|---|
| link | 下载目标,支持多条 | 创作者主页链接 |
| path | 文件保存目录 | ./Downloaded/ |
| mode | 内容类型 | [post, mix] |
| number.post | 作品数量上限 | 0(不限) |
| video / cover / music / json | 各产物开关 | 按需开启 |
| increase.post | 增量跳过已下载 | true |
| thread | 并发数 | 3~5 |
link 里填主页地址,执行下面这条命令,你会在终端看到进度条逐条滚动:
python run.py -c config.yml跑完后打开 Downloaded/ 目录,能看到按作品分好的文件夹,说明链路已通。
🚀 批量扩展:从主页归档到收藏夹备份
链路通了之后,四种常用场景只是换配置的事。
按创作者整页归档:mode 同时写 post 和 mix,把 increase 对应项设为 true。同一配置重复运行就是增量下载,只补作者新发的内容,老作品不会重复落盘。
持续跟踪关注的创作者:link 是列表,可以一次写多个主页链接。配合 increase: true 定期执行,每位作者的目录随时间持续追加,不用逐个复制链接。
收藏夹单独备份:link 填自己主页的收藏夹链接,mode 用 collect 下收藏视频、collectmix 下收藏合集。注意这两种模式基于登录 Cookie 的账号,必须单独使用,不能和 post、mix 混写,也不支持增量跳过。
为内容分析抓数据:把 comments.enabled 设为 true 抓评论,transcript.enabled 设为 true 生成语音转写(密钥放 OPENAI_API_KEY 环境变量),实现见 core/transcript_manager.py;再加 start_time、end_time 限定时间窗口。
📁 管好本地产出:目录、命名与元数据
默认 folderstyle: true 时,每个作品一个独立文件夹,结构长这样:
Downloaded/ ├── download_manifest.jsonl └── 旅行摄影日记_MS4wLjAB.../ └── post/2026-06-15_跟拍攻略_734123.../ ├── video.mp4、cover.jpg、music.mp3 └── info.json、_comments.json、transcript.txt命名靠 filename_template 控制,默认 {date}{title}{id},模板里务必保留 {id},否则不同作品可能撞名。作者目录层由 author_dir 决定:nickname 直观但重名会合并,重度用户建议改 nickname_uid,昵称加稳定 ID 双保险。
每个作品目录里的 info.json 存标题、发布时间、点赞数、作者等元数据;download_manifest.jsonl 每行一条 JSON 记录所有产物,方便日后检索。
🩹 故障排查:四个高频症状
| 症状 | 原因 | 解决办法 |
|---|---|---|
| 只拿到二十来条就停 | 分页接口触发风控 | 保持 browser_fallback: true、headless: false,浏览器里手动过验证;thread 降到 3 |
| 任务突然批量失败 | Cookie 过期 | 重新执行 cookie_fetcher 命令刷新凭证 |
| 文件名重名、目录混乱 | 模板缺 {id},或作者昵称撞车 | 模板加 {id};author_dir 改 nickname_uid |
| 磁盘空间不够 | 全量归档累积过多 | 用 start_time/end_time 圈时间,number 限条数 |
各模式的策略代码在 core/user_modes/ 目录,想看实现可以直接翻。
整套流程就是装依赖、拿凭证、跑通一条、再放量的四步,配置改完直接重跑即可。请仅将本工具用于个人学习、研究与备份目的,尊重创作者的合法权益。
【免费下载链接】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),仅供参考