☰
抖音合集批量下载完整指南:一条命令跑完去水印存档,去重与重试都配好了
2026/10/7 1:56:37 网站建设 项目流程

抖音合集批量下载完整指南:一条命令跑完去水印存档,去重与重试都配好了

【免费下载链接】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 去重、失败重试、浏览器兜底都是自带的,跑起来后不用人盯着。

上个月我在整理一个跟了半年的合集:十几条作品,在 App 里逐条点「保存到相册」,干了将近 40 分钟,回头翻相册还混着 3 条重复。从那之后我改成了把链接写进配置文件的玩法,整个合集一条命令就能跑完,剩下的时间用来干别的事。

四步跑通:从克隆到挂机

需要 Python 3.9+,Windows / macOS / Linux 都能跑。

1. 克隆并安装依赖

git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt pip install playwright && python -m playwright install chromium

2. 复制并修改配置

cp config.example.yml config.yml

把link换成目标主页或合集,其余字段基本都有默认值:

link: - https://www.douyin.com/collection/7341234567890123456 path: ./Downloaded/

完整字段说明见 config.example.yml。

3. 获取 Cookie

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

弹出的浏览器里登录抖音,回终端按 Enter,Cookie 会自动写回配置。

4. 运行

python run.py -c config.yml

跑的时候看进度条就行,python run.py --help可以查全部参数,-t能临时调并发数。

上图是 Douzy 桌面版(内测)的抖音下载选项页;本文讲的是命令行版,配置驱动,更适合挂着跑。

看懂核心机制:解析、去重、失败兜底

链接怎么变成按合集分好的文件夹

core/url_parser.py 从你贴的 URL 里识别链接类型并提取 mix_id,/collection/、/mix/两种写法都能解析,单条视频和图集链接也支持。拿到 id 后,core/mix_downloader.py 把合集里的作品按页拉全、全部入队。默认folderstyle: true且group_by_mode: true:先按作者建目录、再按模式分层(如mix/),每条作品一个子文件夹,下完不用改名。

重复跑同一主页,为什么只会补新增

database: true默认开启,每条下载成功都会写进本地 SQLite(默认文件dy_downloader.db),处理前先查库,已存在的直接跳过。这个增量逻辑由increase控制,默认各模式都是true;改成false则会重下并覆盖当前筛选范围内的文件,无需清库。实现见 storage/database.py。

接口抽风时怎么兜底

默认并发thread: 5,所有请求先过一个令牌桶限速器 control/rate_limiter.py:默认放行 2 次/秒,还带 0~0.5 秒随机抖动。单条作品失败会交给 control/retry_handler.py,首次失败后再试 3 次,间隔 1s、2s、5s(retry_times: 3)。如果主页分页被风控卡住,browser_fallback(默认enabled: true、headless: false)会拉起真实浏览器滚动加载,最多 240 屏(max_scrolls),验证码可以在浏览器里手动过。

踩坑实录:三个最常见的卡点

Cookie 过期,整批卡在需要登录

  • 现象:跑到一半突然提示需要登录,作品列表拉不出来。
  • 原因:ttwid、msToken这类 Cookie 有效期有限,换过登录设备后更容易失效。
  • 怎么办:重跑python -m tools.cookie_fetcher --config config.yml刷新即可。database默认开着,重跑只补新增,已下载的部分不会下两遍。

并发拉到 10,进度反而更慢

  • 现象:把thread从 5 调到 10,速度没提,失败还变多了。
  • 原因:限速器默认 2 次/秒,高并发只是在限速器后面排队,请求节奏更密,更容易触发风控。
  • 怎么办:thread保持默认 5,慢网络就降到 3;配合proxy换出口,挑网络空闲时段跑,比拉满并发稳。

主页只拉到一小部分作品

  • 现象:合集能下全,主页几百条只出了几十条。
  • 原因:接口风控限制了主页分页。
  • 怎么办:保持browser_fallback.enabled: true、headless: false,在浏览器里完成验证。README 也坦承这种兜底不保证成功,日常高频下载建议直接用 Douzy 桌面版。

进阶玩法:时间筛选、原画与评论

只下某段时间的作品:start_time/end_time用YYYY-MM-DD,包含结束当天,配合增量开关实现区间归档:

start_time: "2025-01-01" end_time: "2025-06-30" increase: post: true

追原画质:默认video_quality: highest只在转码档里挑;改成original后每条作品会多一次探测(超时 10s),原片比最高转码档大就优先下原片,探测失败自动回退。

连评论一起存:每个作品会额外生成一份*_comments.json:

comments: enabled: true include_replies: true max_comments: 200

适配与边界:谁该用,谁该绕开

  • 适合:要完整归档某个作者主页或整个合集、需要去重、增量、时间筛选,并且习惯命令行、任务可以长时间挂着的创作者和研究者。
  • 不适合:偶尔存一两条视频的人——App 内「保存到相册」更快;完全不想碰终端的用户,桌面版目前还在内测。
  • 边界要提前知道:README 明确写了当前接口风控会限制 CLI 下载单个视频/合集/音乐,主页走浏览器兜底也不保证成功,选型时把这层算进去。
  • 工具仅面向学习和个人数据管理,请遵守平台规则与内容版权。

配置写好、Cookie 隔段时间刷一次,然后挂着跑——下次再跑同一份配置,它只会把新增的部分补上。

【免费下载链接】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),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询