DouK-Downloader:3 条路径完成抖音音频提取,跳过视频直接拿原声
【免费下载链接】TikTokDownloader抖音 / TikTok 平台作品下载/数据采集工具项目地址: https://gitcode.com/GitHub_Trending/ti/TikTokDownloader
DouK-Downloader 是一个抖音 / TikTok 作品下载与数据采集工具,可以直接下载作品挂载的原声音乐文件,无需从视频中二次分离。作品里挂的 BGM 不走视频转码链路,直接拉音源,省掉从成片里抠音频的环节。
先搞清楚你拿到的是什么
抖音音频提取拿到的,是作品本身挂载的原声文件,不是从视频流里分离出来的音频。区别在于:分离出来的音频是二次产物,多一次转码就多一次损失;而 DouK-Downloader 拿到作品数据后直接请求music_url,把平台侧的音源文件原样落盘,全程不转码,也就没有二次压缩。文件写入Download/目录(默认folder_name),命名由name_format决定,音频统一以.mp3结尾。这条链路也完全不依赖 FFmpeg——FFmpeg 只在直播拉流场景出现,普通原声下载用不到。
一次性配置,把环境跑起来
DouK-Downloader 的 Cookie 和 music 开关配置只需做一次,之后所有下载复用同一份settings.json:
- 克隆仓库并安装依赖(Python 3.12+):
git clone https://gitcode.com/GitHub_Trending/ti/TikTokDownloader cd TikTokDownloader pip install -r requirements.txt python main.py- 首次运行:项目根目录生成
settings.json,终端提示先配置 Cookie。 - 按 Cookie 获取教程 从浏览器复制完整 Cookie,写入
settings.json的cookie字段。
- 把
music改为true,download保持true。 - 再次运行
python main.py,功能菜单正常出现,无 Cookie 告警。
三条路径,按你的场景选一条
路径 A —— 手头就一条链接,马上要这首 BGM
前置条件:Cookie 已配置、music为true。
- 运行
python main.py,在主菜单选「终端交互模式」。 - 选「批量下载链接作品(抖音)」,再选「手动输入待采集的作品链接」。
- 粘贴
v.douyin.com短链,回车。 - 输入
Q结束输入循环。
完成标志:Download/目录出现与原声对应的.mp3文件,终端有下载进度日志。
路径 B —— 长期盯几个音乐人账号的全量更新
前置条件:拿到目标账号主页链接。
- 把账号写进
settings.json的accounts_urls,每条含mark、url、tab、enable。 - 需要限定时间窗时,填
earliest/latest日期范围字段,留空则不限。 - 运行程序,选「批量下载账号作品(抖音)」。
- 选「使用 accounts_urls 参数的账号链接(推荐)」。
完成标志:终端输出「共处理 X 个账号,成功 Y 个,失败 Z 个」的统计行;已下载作品走缓存去重,不会重复下载。
路径 C —— 把下载能力接进自己的服务或定时任务
前置条件:项目自带 FastAPI + uvicorn 服务端,无需额外安装。
- 主菜单选「Web API 模式」,服务监听默认 5555 端口。
- 浏览器打开
http://127.0.0.1:5555/docs,查看自动生成的接口文档。 - 按文档对
/douyin/detail、/douyin/account等接口发起请求,日期范围可传earliest/latest。 - 轮询任务状态或复查
Download/目录确认文件落盘。
完成标志:/docs页面正常打开,请求返回成功后目录出现对应音频。
只有这几个参数会真正改变行为
| 参数 | 默认值 | 什么时候必须改 | 改成什么效果 |
|---|---|---|---|
music | false | 做抖音音乐原声下载必改 | true时同步下载作品原声.mp3 |
download | true | 只想采数据不存文件时 | false时跳过所有文件下载 |
name_format | create_time type nickname desc | 想按账号、备注重排文件名时 | 按所填字段组合生成文件名 |
storage_format | 空(不存储) | 需要留存作品数据表时 | 采集数据导出xlsx/csv |
最小配置示例:
{ "cookie": "你的抖音Cookie", "music": true, "download": true, "name_format": "create_time nickname desc" }账号批量采集另配accounts_urls:
{ "accounts_urls": [ {"mark": "关注的音乐人", "url": "https://www.douyin.com/user/xxxx", "tab": "post", "enable": true} ], "storage_format": "xlsx" }卡住了?三种最常见的"没反应"
Cookie 未生效,功能直接不可用
现象:选功能时终端提示 Cookie 未登录,无法使用。
定位:① 终端是否打印过「正在更新抖音参数」,没有就是 Cookie 没生效;② 确认 Cookie 里含msToken等关键键值,且复制自抖音站点。
修复:按 Cookie 获取教程 重新复制一份完整 Cookie 写入settings.json,重启程序。
music 开了,下载目录里没有音频
现象:music: true但只有视频,没有.mp3。
定位:① 确认该作品本身挂有原声,翻唱、无音乐作品没有music_url;② 确认download总开关不是false。
修复:换一条明确有 BGM 的作品重跑;下载逻辑见 src/downloader/download.py 的download_music,对照日志排查。
直播拉流提示找不到 ffmpeg
现象:仅直播场景报 FFmpeg 不可用。
定位:终端执行ffmpeg -version验证是否安装。
修复:
sudo apt install ffmpeg装好后把可执行文件绝对路径写进ffmpeg参数即可。
它和在线解析站 / 客户端手动保存比,差在哪
| 维度 | DouK-Downloader | 在线解析站 | 客户端手动保存 |
|---|---|---|---|
| 音频来源 | 作品原声文件,不转码 | 多经二次处理 | 原声 |
| 批量与账号追踪 | 支持,可配日期范围 | 基本不支持 | 不支持 |
| 数据导出 | xlsx/csv | 无 | 无 |
| 成本 | 开源免费 | 广告、次数受限 | 免费但纯手工 |
适合需要批量取原声、长期追踪账号,或要把下载能力嵌进自己工作流的创作者。
继续往下读 / 快问快答
想深入:完整功能看 docs/DouK-Downloader文档.md;各平台接口调用收在 src/interface/,每个文件对应一个功能(作品、评论、合集、直播);中英文文案在 locale/ 维护。
问:下载的是什么格式的音频,会转码吗?答:作品挂载的原声文件原样落盘(.mp3),不转码,没有二次压缩损失。
问:能否只采集数据、不下载文件?答:可以,download设为false,再开storage_format导出数据表。
问:TikTok 和抖音能同时跑吗?Cookie 会过期吗?答:可以,两个平台各有独立的cookie/cookie_tiktok、proxy/proxy_tiktok,互不干扰;Cookie 会过期,出现未登录提示就按教程重新获取一份。
先用路径 A 跑一条链接,确认命名符合剪辑习惯,再把追踪的账号填进accounts_urls,让批量模式持续补齐原声。
【免费下载链接】TikTokDownloader抖音 / TikTok 平台作品下载/数据采集工具项目地址: https://gitcode.com/GitHub_Trending/ti/TikTokDownloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考