news 2026/9/15 18:07:37

douyin-downloader 完全指南:抖音音频提取与主页批量下载,5 分钟跑通

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
douyin-downloader 完全指南:抖音音频提取与主页批量下载,5 分钟跑通

douyin-downloader 完全指南:抖音音频提取与主页批量下载,5 分钟跑通

【免费下载链接】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 是一个开源的抖音下载器:无水印下载单条视频、图文、合集,支持主页作品批量收集和抖音音频提取,全程由一个 YAML 配置文件驱动。适合需要归档作品、收集背景音乐素材的用户。

项目速览

这是一个 Python CLI 工具,同仓库还提供一个基于同一后端的桌面版 Douzy。最大亮点是工程化做得比较完整:Rich 进度条、指数退避重试、SQLite 加本地文件双重去重(增量下载可跳过已下载内容),以及 API 翻页受限时启动真实浏览器、人工过验证码的兜底机制(浏览器兜底配置)。

两个前提要说清楚:需要一份已登录抖音账号的 Cookie(含 msToken、ttwid 等字段);只支持国内版抖音接口,海外版 TikTok 不在覆盖范围内,直播录制功能标注为实验性。

跑通流程:从 clone 到首次抖音批量下载

把代码拿下来装好依赖,整个过程没有编译步骤:

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 自动获取这一步。运行python -m tools.cookie_fetcher --config config.yml会弹出浏览器,登录抖音后回到终端按 Enter,Cookie 会自动写回配置文件,不需要手动复制粘贴。

配好之后复制config.example.ymlconfig.yml,改两个地方就能跑:link 填作品或主页地址,mode/number 控制下载什么、下载多少。下面是最简可用配置:

link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx path: ./Downloaded/ mode: - post number: post: 20 thread: 3

执行python run.py -c config.yml,命令行参数-u-t-p可以覆盖文件里的值。文件默认按"作者名/模式/日期_标题_aweme_id"建目录,进度条实时显示,跑完有成功失败统计。不想碰命令行的话,桌面版 Douzy 粘链接即可自动识别类型并一键下载。

抖音音频提取:收集某位创作者的全部原声

如果你正在做"收集某创作者全部背景音乐"这类任务,把配置改成这样:

link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - music number: music: 0 music: true

number.music填 0 表示全量;music: true会把每个作品的原声 mp3 保存到该作品目录里。文件名走{date}_{title}_{id}模板,同一份 JSON 元数据里带作者、发布时间、播放量,方便后续检索。请求频率由rate_limit控制(默认 2 次/秒),我一般设 1 给自己留点风控余量。

批量归档与直播录制

如果你有多个创作者要处理,link 里直接放多个主页 URL,把json: true打开,媒体文件旁会多出一份作品元数据;保持database: true,第二次运行时 去重数据库 加本地文件名扫描会自动跳过已下载的作品,等于天然的增量更新。想给博主改名后不合并目录,把author_dir改成nickname_uid

录制直播则是把 link 指向https://live.douyin.com/{room_id}live.max_duration_seconds填 0 表示录到主播下播。FLV 落在Downloaded/{作者}/live/下并附带_room.json元数据快照;Ctrl+C 中断或主播下播时,已录制的字节会保留。注意 HLS 源只保存 playlist 文件,需要自己用 ffmpeg 后处理,且 webcast 直播接口 覆盖不全场景,属于实验性功能。

douyin-downloader 实际表现与已知限制

任务量级耗时量级(thread=3,家庭宽带)
单条视频几秒到 1 分钟,取决于时长和码率
100 条 post 作品(720p)约 12~15 分钟,主要受 rate_limit 制约
100 条音频原声约 3~5 分钟,文件小、下载本身很快

实测 100 条 post 作品、thread=3 的情况下,瓶颈基本不在带宽而在请求频率,把 rate_limit 往上抬收益很小,反而更容易触发风控。

已知限制有两条值得先知道:一是 Cookie 有有效期(通常数周量级),过期后表现为全部请求登录失效,重跑一次 Cookie 脚本即可;二是 API 翻页受限时,浏览器兜底目前只对post模式做了完整验证,like/mix/music模式主要依赖 API 正常分页,被风控时可能只抓到前几页。

踩坑速查

抓作品只能看到 20 条

  • 现象:主页采集停在 20 条左右,不再翻页也不报错
  • 原因:API 翻页触发平台风控,被限制在首页
  • 解法:保持browser_fallback.enabled: trueheadless: false,浏览器弹出后手动完成验证再让它继续

所有请求提示登录失效

  • 现象:进度条不动,日志里全是登录过期或空数据
  • 原因:配置里的 Cookie 过期了
  • 解法:重跑python -m tools.cookie_fetcher --config config.yml,几分钟内拿到新的

下载中断留下半截文件

  • 现象:个别 mp4 无法播放,体积明显小于源视频
  • 原因:网络中断;程序会做 Content-Length 校验,不完整文件自动清理并重试
  • 解法:retry_times: 3的自动重试通常能覆盖;仍失败就直接重跑任务,增量模式会跳过已完成的部分

并发拉满反而失败率升高

  • 现象:thread 设到 10,失败和重试比 3 并发时多得多
  • 原因:并发过高触发速率限制,请求被降权或拒绝
  • 解法:thread 保持 3~5,rate_limit设 1~2,配合指数退避重试已经足够稳

douyin-downloader 的核心是"一个配置文件 + 一条命令",上手成本很低。建议先用单条视频跑通,再开批量任务,thread 别超过 5;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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/15 18:06:44

Loop macOS 窗口管理工具使用指南:径向菜单与一键窗口布局

Loop macOS 窗口管理工具使用指南:径向菜单与一键窗口布局 【免费下载链接】Loop Window management made elegant. 项目地址: https://gitcode.com/GitHub_Trending/lo/Loop Loop 是一款免费开源的 macOS 窗口管理工具,解决系统缺少内建窗口分屏…

作者头像 李华
网站建设 2026/9/15 18:05:16

MOS登录页改版背后:Oracle统一身份认证迁移深度解析与排障指南

1. 登录页变更的前因后果:它不是临时改版,而是身份体系的一次底层切换先说结论:你看到的新页面不是简单的换皮,也不是Oracle偷偷升级了界面主题,而是MOS(My Oracle Support)把登录这件事&#x…

作者头像 李华
网站建设 2026/9/15 18:03:55

MATLAB图像处理实战:从算法验证到FPGA部署

简介:本资源是一套完整的MATLAB图像处理教学与实践项目,面向数字图像处理课程学习者、课程设计学生及GUI开发初学者,聚焦超分辨率重建这一核心任务,提供从界面交互到算法实现的端到端解决方案。压缩包共20个文件,含15幅…

作者头像 李华
网站建设 2026/9/15 18:03:32

Zemax显微镜光学设计全流程:从物镜优化到杂散光分析

做光学设计这些年,Zemax几乎就是案头的常驻工具。最近一个项目是整套显微镜系统的光路设计,从物镜初始结构、目镜匹配到照明系统建模,再到后续用非序列模式做分光棱镜的杂散光分析,前前后后折腾了一个多月。这中间踩了不少坑&…

作者头像 李华