news 2026/9/16 19:36:28

抖音批量下载教程:3 步跑通去水印下载与主页全量抓取

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
抖音批量下载教程:3 步跑通去水印下载与主页全量抓取

抖音批量下载教程:3 步跑通去水印下载与主页全量抓取

【免费下载链接】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 的思路是"链接进、文件夹出":把视频链接或主页链接写进配置文件,工具负责翻页解析、下载媒体、按作者和模式分目录落盘,重复内容靠数据库自动跳过。整个过程不需要人工盯着,跑完直接得到结构化的本地档案。

不同内容类型,各对应一个下载场景

  • 单个视频:拿到/video/{aweme_id}链接直接下载,自动挑选无水印源,并根据video.bit_rate选出最高码率版本,画质尽量给满。
  • 图文作品/note//gallery/链接会被识别为图集,逐张保存,不用单独处理图片序列。
  • 合集内容/collection/{mix_id}链接会展开成整条合集,配合主页的mix模式可以批量拉取作者的全部合集。
  • 音乐原声/music/{music_id}优先下载原声文件,原声缺失时回退到该音乐下的首条作品,适合存 BGM。
  • 主页批量/user/{sec_uid}链接配合mode参数,可分别拉取作品(post)、点赞(like)、合集(mix)、音乐(music);短链v.douyin.com也能直接丢进去自动解析。
  • 收藏夹同步:登录态 Cookie 对应的账号收藏夹,用collect/collectmix模式可整体下载(这两个模式需单独使用,不能和其他模式混跑)。

下载过程还有几层保障:默认 5 线程并发、指数退避重试、速率限制避免请求过快,翻页被风控卡住时可以自动唤起浏览器兜底、人工过一遍验证码。相关实现分别在 core/(下载逻辑)、control/(并发与重试)、storage/(数据库去重)。

快速跑通:从克隆到开始下载

准备:拉代码装依赖

git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader pip install -r requirements.txt

克隆仓库后装好 Python 依赖,Python 3.8 及以上均可。需要浏览器兜底或自动获取 Cookie 的话,再补一句pip install playwright && python -m playwright install chromium

配置:复制示例配置并获取 Cookie

cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml

先复制一份 示例配置 作为自己的config.yml;然后运行 Cookie 获取脚本,弹出的浏览器里登录抖音后回到终端按 Enter,Cookie 会自动写回配置文件,这一步是后续主页批量下载能翻页的关键。

执行:一条命令开始任务

python run.py -c config.yml

配置文件里填好link(视频或主页链接)、path(保存目录)和mode(下载模式)即可开跑。也可以临时追加链接覆盖配置,比如python run.py -c config.yml -u "https://www.douyin.com/video/7604129988555574538" -t 8,其中-t指定并发数、-p指定下载目录。

跑完之后,本地得到的是什么

下载产物按"作者名 → 模式 → 单作品子目录"三层组织,folderstyle: true(默认)时每个作品一个独立文件夹,里面包含视频本体、封面、原声、元数据 JSON,开启评论采集时还有*_comments.json

Downloaded/ ├── download_manifest.jsonl └── 作者名/ ├── post/ │ └── 2024-02-07_作品标题_aweme_id/ │ ├── ...mp4 │ ├── ..._cover.jpg │ ├── ..._music.mp3 │ └── ..._data.json ├── mix/ └── music/

根目录的dy_downloader.db记录下载历史,是增量下载和跨模式去重的依据:同一个作品在 post、like、music 多种模式下出现时不会重复落盘。常用参数速查:

配置项作用典型值
mode主页下载模式post/like/mix/music,收藏夹用collect/collectmix
number.post各模式数量上限,0为不限50
increase.post增量开关,只拉新作品true(依赖database: true
start_time/end_time时间范围过滤YYYY-MM-DD
thread并发线程数5
browser_fallback.enabled翻页受限时浏览器兜底true
progress.quiet_logs进度阶段静默日志true

不想手写配置的话,项目还带了--hot-board(热搜榜导出)和--search(关键词搜索)这类命令行入口,以及可选的 REST 服务模式(--serve),详见 cli/main.py 的参数解析。

避坑指南

  • 只抓到 20 条就停:大概率是翻页触发风控。保持browser_fallback.enabled: trueheadless: false,浏览器弹出后手动完成验证再让程序继续。
  • Cookie 过期导致请求失败:重跑一次python -m tools.cookie_fetcher --config config.yml刷新即可,登录态失效是常态。
  • 想重下某条作品:程序是"数据库 + 本地文件"双重去重,删文件不删库或删库不删文件都可能不触发重下,两边要一起清(dy_downloader.db里的aweme表)。
  • 终端刷屏严重:确认progress.quiet_logs: true;确需看日志时再加--show-warnings-v,平时别开。

3 条命令完成配置到下载,主页内容按目录自动归档。把常用主页链接填进config.yml,跑一次python run.py -c config.yml试试。

【免费下载链接】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/9/16 19:36:02

2026企业AI办公工具选型指南:框架、全景与落地路径

一、企业选AI办公工具,为什么不能只看功能列表 企业数字化负责人在筛选AI办公产品的过程中,很容易陷入表层对比的误区。不少选型工作会把主要精力投入统计工具的功能条目,或是单纯对比席位订阅成本,也有部分团队会直接跟随市场声量…

作者头像 李华
网站建设 2026/9/16 19:35:46

CleanRL 快速上手指南:5 分钟跑通你的第一个 PPO 强化学习实验

CleanRL 快速上手指南:5 分钟跑通你的第一个 PPO 强化学习实验 【免费下载链接】cleanrl High-quality single file implementation of Deep Reinforcement Learning algorithms with research-friendly features (PPO, DQN, C51, DDPG, TD3, SAC, PPG) 项目地址:…

作者头像 李华
网站建设 2026/9/16 19:33:17

Arch Linux + KDE下WPS中文文件名无法找到的定位与修复

先说结论:这个报错十有八九不是文件真的“没了”,而是 WPS 在把文件路径从启动参数一路传递到文档加载模块的过程中,路径已经变成了空字符串。我在 Arch Linux KDE 环境下折腾 WPS 中文文件名打不开的问题,前后花了两天&#xff…

作者头像 李华
网站建设 2026/9/16 19:32:42

Burpsuite实战:手把手教你搞定POST型SQL注入

做渗透测试的朋友应该都有过这种经历:拿下一个登录框或查询接口,下意识在URL后面加个单引号试了试,页面毫无反应;换成数字型注入点在地址栏里折腾半天,最后还是没打通。问题往往不在你的语句,而在请求方式—…

作者头像 李华
网站建设 2026/9/16 19:32:16

ddddocr中文验证码识别实战:开箱即用的自动化登录方案

1. 项目概述:为什么是 ddddocr,而不是其他方案? 最近帮一个做电商数据采集的朋友解决登录问题,他卡在验证码这一步整整三天——手动输入太慢,用传统 OpenCV Tesseract 做二值化OCR,对扭曲、粘连、带干扰线…

作者头像 李华
网站建设 2026/9/16 19:32:02

MD5在线加密核心JS实现:从原理到文件校验的完整指南

做了这么多年前端,MD5这个算法算是绕不开的老熟人了。业务系统里要对文件做完整性校验、要对登录参数做签名、要根据内容生成唯一标识,后端跑个MD5很容易,但一旦场景切到纯前端——比如你要做一个把数据完全留在本地的在线工具、要离线使用&a…

作者头像 李华