TikTokDownloader / DouK-Downloader 项目摘要

仓库: JoeanAmier/TikTokDownloader (14.4k Stars) 开发者: JoeanAmier(同时维护 XHS-Downloader、KS-Downloader) 协议: GPL-3.0 | 语言: Python 88.6% + JS 11.2% 最低 Python: 3.12

开源的双平台(抖音 + TikTok)数据采集与文件下载工具,基于 HTTPX 异步框架构建。原名 TikTokDownloader,后更名为 DouK-Downloader。


核心功能

类别具体功能
内容下载视频/图集/实况/动图,最高画质,支持原画
批量下载账号发布/喜欢/收藏/收藏夹作品,多账号批量
直播拉流地址获取,ffmpeg 直播录制
数据采集作品详细数据、评论、搜索数据、热榜、账号数据
合集抖音合集、TikTok 合辑作品下载
存储CSV / XLSX / SQLite 三种导出格式

技术架构

核心依赖: HTTPX(异步 HTTP)、Rich(终端UI)、aiosqlite、aiofiles、lxml

关键设计:

  • 智能延时请求机制 — 自动控制请求频率,降低被封风险
  • 临时文件+重命名策略 — 文件先写临时目录,完成后原子移动
  • 增量下载 — 记录已下载作品 ID,自动跳过
  • 断点续传 — 支持中断后继续
  • 多线程下载 — 提升大文件下载效率

三种获取方式:

  1. 剪贴板读取 — 从浏览器复制 Cookie 后粘贴
  2. 浏览器读取 — 自动从 Chromium/Chrome/Edge 提取(Win 需管理员权限)
  3. 扫码登录 — 手机抖音扫码

Cookie 影响下载分辨率,失效后需重新写入。获取私密账号数据需登录态 Cookie + 关注该账号。

三种交互模式

模式状态说明
终端交互模式✅ 可用命令行菜单式操作
Web UI 模式⏸ 重构中代码已重构但尚未重新开放
Web API 模式✅ 可用HTTP 接口调用,支持远程访问

配置体系

配置文件 settings.json 位于 _internal/Volume/,重要参数:

  • proxy — 代理地址(支持 Swiftproxy、BestProxy 等)
  • max_pages — 控制请求次数,影响采集范围

项目生态

作者同系列工具:

  • XHS-Downloader — 小红书/RedNote 数据采集
  • KS-Downloader — 快手数据采集

参考项目:f2、Douyin_TikTok_Download_API、tiktok-web-reverse-engineering、DouyinLiveRecorder

关联连接