DouK-Downloader 抖音下载完整指南:从 Cookie 配置到批量下载
【免费下载链接】TikTokDownloader抖音 / TikTok 平台作品下载/数据采集工具项目地址: https://gitcode.com/GitHub_Trending/ti/TikTokDownloader
想把博主的最新作品存到本地,点开分享链接却只有转发和举报选项?DouK-Downloader(原 TikTokDownloader)是一个基于 Python 3.12 与 HTTPX 的开源抖音 TikTok 下载工具,一条链接即可解析出视频、图集和封面。与常见的单文件下载器不同,它把作品数据直接落盘为 CSV/XLSX/SQLite,下载和采集一次完成。
一、快速上手:装好并跑通程序
不想配环境:从 Releases 下载已编译的可执行文件,解压后双击运行main,新手路径到此为止。
想跑源码:先克隆仓库,再用 uv 同步依赖并启动(要求 Python 3.12+):
git clone https://gitcode.com/GitHub_Trending/ti/TikTokDownloader cd TikTokDownloader uv sync --no-dev uv run main.py首次启动需先完成 Cookie 配置,详见下文"关键配置"一节。跑通后终端会显示免责声明确认框,确认即可进入主菜单:
二、核心用法:一条链接到本地文件
DouK-Downloader 的基本工作流是:输入作品链接或账号主页地址,程序解析并下载,再按规则存到本地文件夹。启动时在主菜单选择运行模式即可切换:
| 模式 | 适用人群 | 启动方式 |
|---|---|---|
| 终端交互模式 | 普通用户 | 主菜单选择"终端交互模式" |
| Web API 模式 | 开发者 | 主菜单选择"Web API 模式",服务运行在 127.0.0.1:5555 |
| 后台监听模式 | 自动化需求 | 主菜单选择"后台监听模式" |
Web UI 模式正在重构、暂未开放,暂不影响上述三种模式。
粘贴链接批量下载作品
- 输入:主菜单依次选"终端交互模式 → 批量下载链接作品 → 手动输入待采集的作品链接"
- 操作:粘贴抖音或 TikTok 链接,一行一条,直接回车结束输入
- 输出:视频、封面和图集按命名规则存入存档文件夹,已下载过的文件自动跳过
终端交互界面中的下载流程示意:
同样的入口也支持账号主页地址,批量采集其发布作品,增量下载并自动去重。
通过 Web 接口拉取单条作品数据
Web API 模式启动后,浏览器访问http://127.0.0.1:5555/docs可查阅自动生成的接口文档,每个接口都有参数说明和返回格式。用几行代码即可调用:
from httpx import post headers = {"token": ""} # 在配置文件中设置的 token data = {"detail_id": "0123456789", "pages": 2} api = "http://127.0.0.1:5555/douyin/comment" print(post(api, json=data, headers=headers).json())接口覆盖作品、评论、账号、搜索与热榜,支持 JSON 交互,便于集成到脚本或自有应用。Web API 模式启动后的服务界面如下:
三、关键配置:Cookie 获取教程
为什么需要:Cookie 决定能拉到多少画质——没有有效 Cookie 时,接口返回的数据受限甚至直接失败,最高分辨率视频也会拿不到。
怎么拿:在浏览器里把 Cookie 复制出来即可,只需四步:
- 浏览器访问抖音网页版(登录账号后 Cookie 权限更高)
- 按 F12 打开开发者工具,切到"网络"选项卡并勾选"保留日志"
- 在筛选器输入
cookie-name:odin_tt,点击加载任意作品的评论区 - 点击任意一条数据包,全选复制
Cookie的值
怎么填:启动 DouK-Downloader 时选择"手动输入 Cookie"或"从剪贴板读取 Cookie",写入一次即可。配置保存在settings.json:
{ "cookie": "ttwid=xxx; odin_tt=xxx; ...", // 抖音 Cookie "tiktok_cookie": "sessionid=xxx; ...", // TikTok Cookie "works_urls": ["https://v.douyin.com/xxx/"], // 待下载作品链接 "folder_name": "Download", // 存档文件夹 "separate": true // 按账号/图集分文件夹归档 }Cookie 会过期:表现为数据接口返回失败、画质变低或无法访问私密账号。此时按上述四步重新获取、重新写入即可,无需每次运行都配置。
四、实际场景:三种典型用法
按博主批量采集发布作品
定期追更某账号的创作者,可以把多个主页地址写进配置文件,程序按账号持续抓取新作品:
{ "accounts_urls": [ {"mark": "博主A", "url": "https://www.douyin.com/user/xxx", "tab": "post", "enable": true}, {"mark": "博主B", "url": "https://www.douyin.com/user/yyy", "tab": "post", "enable": true} ] }- 已下载作品自动跳过,只增量拉取新发布的
- 账号改名后,已下载文件名中的昵称会自动更新
- 获取私密账号作品需使用已登录且已关注该账号的 Cookie
开发者用 API 集成下载能力
把 DouK-Downloader 当作数据服务跑在服务器上,业务代码只发 HTTP 请求:
- 主菜单选择"Web API 模式",接口文档自动生成,无需手写
- 作品下载、评论采集、搜索与热榜共用同一套服务
- 请求头带 token 鉴权,局域网内其他机器也可直接调用
单条调用见上文"通过 Web 接口拉取单条作品数据",多接口串联即可搭出自己的采集流水线。
剪贴板自动下载
不想每次进菜单:开启"后台监听模式"后,复制抖音或 TikTok 链接到剪贴板,程序就会自动识别并下载,适合边刷边存的场景。
五、进阶能力
除了基础下载,项目还内置了以下能力:
- 作品数据落盘 CSV/XLSX/SQLite
- 直播录制(需 FFmpeg)
- 动态/静态封面下载
- 按发布时间与自定义规则筛选作品
- 代理请求(配置文件中设置 proxy)
- 断点续传与文件完整性校验
六、常见问题与下一步
- 下载到的视频画质低→ 原因:Cookie 过期或未登录。解法:按"关键配置"一节的四步重新获取并写入;仍不理想可换登录态 Cookie 再试。
- 请求 Web API 提示连接被拒绝→ 原因:程序未启动或未选择"Web API 模式"。解法:确认服务已运行,再访问
http://127.0.0.1:5555/docs验证。 - macOS 首次运行可执行文件被拦截→ 原因:文件未做代码签名。解法:终端执行
xattr -cr 项目文件夹路径一次,之后即可正常运行。
DouK-Downloader 把抖音下载、TikTok 采集与数据落盘整合到一个轻量程序里,装好就能跑。 更多细节见仓库 README 与 docs/ 目录,核心下载逻辑在 src/downloader/。 请遵守平台条款并尊重创作者版权。
【免费下载链接】TikTokDownloader抖音 / TikTok 平台作品下载/数据采集工具项目地址: https://gitcode.com/GitHub_Trending/ti/TikTokDownloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考