如何使用 DouK-Downloader:批量下载抖音/TikTok 作品、归档账号、把采集挂成接口
【免费下载链接】TikTokDownloader抖音 / TikTok 平台作品下载/数据采集工具项目地址: https://gitcode.com/GitHub_Trending/ti/TikTokDownloader
DouK-Downloader(曾用名 TikTokDownloader)是一款面向抖音/TikTok 的免费开源批量下载与数据采集工具:粘贴作品链接把视频存到本地,账号主页增量归档,评论、搜索数据导出表格,直播交给 ffmpeg 录制,全程终端加配置文件驱动。适合要备份作品、做数据采集的个人用户。
能力速览
- 批量下载抖音/TikTok 单作品、账号、合集作品,覆盖视频、图集、封面
- 采集作品、账号、评论、搜索、热榜数据,按 CSV / XLSX / SQLite 落盘
- 账号主页增量归档:记录已下载作品 ID,每次运行只拉新作品
- 终端交互、后台剪贴板监听、Web API 服务三种使用形态
- 支持代理、断点续传、多线程下载、文件完整性校验
环境准备
Python ≥ 3.12,用 uv 管理依赖(没有 uv 可改用 pip 安装 requirements.txt)。
git clone https://gitcode.com/GitHub_Trending/ti/TikTokDownloader cd TikTokDownloader uv sync --no-dev uv run main.py首次启动会生成settings.json,提示选择语言并确认免责声明。
存下一条链接作品
原理:输入是分享链接(网页版或 App 里"复制链接"的口令文本都行),程序提取作品 ID、拉取作品数据,输出到程序根目录下的Download文件夹。
- 启动程序,确认语言和免责声明
- 浏览器登录抖音网页版,F12 打开网络选项卡
- 按
odin_tt筛选,复制完整 Cookie - 主菜单选"从剪贴板读取 Cookie (抖音)",回车
- 终端交互模式 → 批量下载链接作品 → 手动输入
- 粘贴链接回车,可连续粘贴多条
请输入作品链接: https://v.douyin.com/xxxx 共提取到 1 个作品,开始处理! 【视频】2025-08-03 20.48.15-... 文件下载成功 下载视频作品: 1 个,跳过视频作品: 0 个坑:
- 粘贴后先删空行,带换行的链接提取不出作品 ID
- 图集作品被拆成多张图保存,属正常现象
- 想留封面,把
dynamic_cover/static_cover改为true - 不想每次粘贴:主菜单"后台监听模式",复制链接即自动采集
增量归档一个账号的主页
原理:主页链接登记一次,程序把已下载作品 ID 记进本地数据库,之后每次运行只补新作品,归档随账号更新自然生长。
settings.json的accounts_urls登记账号- 启动进入终端交互模式
- 选"批量下载账号作品(抖音)"
- 选"使用 accounts_urls 参数的账号链接"
"accounts_urls": [{ "url": "https://www.douyin.com/user/xxx", "mark": "我关注的博主", "earliest": "2024-01-01", "enable": true }] // ... 其余字段不动合集归档同理:链接登记进mix_urls,填mark、url、enable。
坑:
earliest/latest限定拉取的时间窗口tab填favorite/collection时页面只返回发布日期,作品多就用max_pages限页- 私密账号作品需要已关注该账号的登录态 Cookie
- TikTok 归档要先在
browser_info_tiktok配device_id
把采集能力挂成 HTTP 接口
原理:Web API 模式用 FastAPI 把采集端点直接暴露出去,POST 即得结构化 JSON,你的脚本不用自己封一层。
- 主菜单选"Web API 模式",本地服务启动
- 浏览器访问
http://127.0.0.1:5555/docs - 向端点 POST,拿到结构化数据
端点:/douyin/detail单作品、/douyin/account账号作品、/douyin/mix合集、/douyin/live直播、/douyin/comment评论;TikTok 对应/tiktok/detail、/tiktok/account。
from httpx import post post("http://127.0.0.1:5555/douyin/detail", json={"detail_id": "0123456789"})坑:
settings.json改动要重启程序才生效- 服务器长跑:用仓库自带
Dockerfile构建镜像,映射 5555 端口 - 公开部署记得配置 token 验证,挡住恶意请求
高频配置字段
| 字段 | 填什么 | 影响什么 |
|---|---|---|
storage_format | csv/xlsx/sql | 采集结果按该格式落盘 |
ffmpeg | 本机 FFmpeg 完整路径 | 开启直播录制能力 |
proxy | 代理地址 | 请求超时、断流时走代理重试 |
root | 其他目录 | 下载落盘位置跟着变 |
max_pages | 页数 | 限制采集请求页数 |
dynamic_cover/static_cover | true | 随作品保存动态/静态封面 |
完整字段定义见 settings.py。
问题自查
| 现象 | 大概率原因 | 怎么解决 |
|---|---|---|
| 只下到清晰度低的版本 | Cookie 失效 | 重新登录后写入一份新 Cookie |
| 请求超时、下载中断 | 网络受限 | 填proxy字段后重试 |
| 提示"未检测到有效的 ffmpeg" | ffmpeg字段为空或路径错 | 填入 FFmpeg 完整路径 |
| 下载到一半停止 | 磁盘空间不足 | 清理磁盘,或把root挪到别的盘 |
| 程序无法启动 | Python 版本过低 | 升到 ≥ 3.12,重新同步依赖 |
| 账号作品一条都拉不到 | 私密账号且 Cookie 未关注该账号 | 换已关注该账号的 Cookie |
DouK-Downloader 的能力边界是抖音/TikTok 两平台的作品、数据与直播采集,付费作品不支持;内置加密参数算法不再维护,个别端点失效时需自行准备加密参数生成代码。想读实现,从 下载核心 和 各平台接口实现 入手。请限于个人学习研究用途,遵守平台规则与版权要求,不传播涉及他人隐私的内容。
【免费下载链接】TikTokDownloader抖音 / TikTok 平台作品下载/数据采集工具项目地址: https://gitcode.com/GitHub_Trending/ti/TikTokDownloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考