抖音批量下载实战:3 步装好 douyin-downloader,主页视频去水印一次跑通
2026/9/16 12:14:16 网站建设 项目流程

抖音批量下载实战:3 步装好 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 是一个命令行抖音批量下载工具,支持视频、图文、合集、音乐和作者主页的去水印抓取,默认带进度条、失败重试、SQLite 去重和浏览器兜底。它适合想批量保存某位创作者全部作品、或长期追更的人。你只需给一条链接和一份 YAML 配置,剩下的并发下载、按作者归档、增量补新都替你完成,省掉逐条手动保存的重复劳动。

🔹 它能帮你做什么

先看一张能力表,了解这份工具能覆盖哪些下载任务,再决定用它解决什么问题:

能力你拿到的结果
单个视频 / 图文 / 合集一条链接直接下,自动挑无水印、最高码率的源
作者主页批量post/like/mix/music四种模式并发抓取,跨模式自动去重
短链解析v.douyin.com等短链自动还原成真实作品地址
直播录制直播间链接录成 FLV,主播下播或中断时已录部分保留
附加资源封面、原声音乐、头像、JSON 元数据按需一起落盘
评论采集按作品抓评论(可含二级回复),存成*_comments.json
热搜 / 关键词搜索--hot-board/--search结果导出 JSONL,便于二次处理
REST API 模式--serve起一个接口服务,把下载任务丢给别的系统调
完成推送下载结束推 Bark / Telegram / Webhook,不用盯终端

它底层是模块化设计:下载走策略模式,各模式可插拔替换,核心逻辑集中在 核心下载模块,想扩展自定义抓取行为时改这里即可,不必碰主流程。

🔹 装好并跑通第一次下载

把安装、拿 Cookie、跑第一次下载合成一条流水线,按 1→2→3 走:

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

跑完不报错即可。前两条是基础依赖,后两条装了 Playwright,后面自动抓 Cookie 和浏览器兜底都靠它。

2)复制配置并拿 Cookie

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

Cookie 提取脚本 会弹出抖音登录页,你扫码登录后回到终端按回车,Cookie 就自动写进 示例配置 的cookies段,不用手抄。

3)填一条链接,跑第一次下载

config.yml里的link换成任意一条作品链接:

link: - https://www.douyin.com/video/7604129988555574538 path: ./Downloaded/ thread: 5 retry_times: 3
python run.py -c config.yml

把视频链接贴进输入框,工具识别后点「下载」即开始,桌面端与命令行共用同一套后端

终端会出现 Rich 进度条,下载完的视频落在Downloaded/作者/post/日期_标题_id/里,默认只存视频本体,封面、音乐等按下方配置开关决定。

🔹 几个真正影响体验的配置

配置项很多,但日常真正调来调去的就是下面这几个,其余保持默认即可:

配置建议值作用
thread3~8并发线程数。家庭宽带从 3 起步,高速环境给到 8,拉太高容易被限流
retry_times2~3单条失败自动重试次数,配合指数退避(1s/2s/5s)扛住抖动
increase.posttrue增量开关。磁盘上已有主文件的视频跳过,只补新作品
start_time/end_timeYYYY-MM-DD时间过滤,只下某段区间内发布的作品
folderstyletrue每个作品建独立子目录,避免文件名撞车
browser_fallback.enabledtrue分页被风控时自动开浏览器兜底,配合headless: false手动过验证
databasetrue开 SQLite 记录下载历史,配合 SQLite 去重模块 做去重

增量和去重要理解它们的分工:increase看的是磁盘上文件在不在,database记的是历史元数据。想强制重下,就把对应模式的increase设成false,它会在当前筛选范围内重下并原子覆盖。

🔹 真实使用场景

场景一:一次性搬空某创作者的作品

需求——把一位博主历史发布的所有作品存下来。

link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post number: post: 0 # 0 = 不限量,全量抓取 thread: 8

跑完你会得到Downloaded/博主昵称/post/下按日期归档的全部视频,number里同一作品跨模式不会重复下第二遍。

场景二:长期追更,只补新的

需求——每周跑一次,只要新增作品,别重下旧的。

在场景一基础上加两行:

increase: post: true

关注列表里能筛出有新作品的创作者,标注新增条数后直接触发下载,增量逻辑与命令行一致

再跑一次python run.py -c config.yml,已经躺在本地的视频被跳过,只有新发的会下载。

场景三:只下某时间段的作品

需求——整理 2024 全年精选,不要更早的。

start_time: "2024-01-01" end_time: "2024-12-31"

过滤只在link对应的主页抓取范围里生效,跑完你手里就是 2024 年内发布的那批作品,适合做年度素材库。

任务中心汇总每条任务的成功/失败条数,失败项可直接重试,也能一键打开输出目录

🔹 遇到 XX 怎么办

  • Cookie 过期、报认证失败→ 重跑python -m tools.cookie_fetcher --config config.yml重新扫码即可。Cookie 有效期大约 1~2 周,过期属正常。

  • 只拿到 20 条左右就停→ 这是分页触发了风控。确认browser_fallback.enabled: trueheadless: false,浏览器弹出时手动把验证走完,别急着关窗口。

  • 明明下过却想强制重下→ 删掉本地对应目录(目录名含aweme_id),或把该模式increase设成false。注意只删数据库不删文件是不会触发的,程序靠扫本地文件名识别已下内容。

🔹 收尾提醒

  • Cookie 大约 1~2 周失效,过期就重跑 Cookie 脚本,别硬扛认证错误。
  • 线程数给 3~8 之间,家庭宽带 3 起步,别贪多触发限流;网络不稳就把retry_times提到 3。
  • 长期追更把increasedatabase一起开着,既增量补新又不重复占空间。

本项目仅用于技术研究、学习与个人数据管理,请遵守相关法律法规与平台规则,尊重内容创作者的版权。

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

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

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

立即咨询