TikTokDownloader

JoeanAmierGPL-3.0活跃维护

抖音和 TikTok 作品下载与数据采集工具,支持批量抓取视频、评论等数据并导出 CSV,可通过 Docker 部署。

抖音 / TikTok 平台作品下载/数据采集工具

5.8发布于 2026-09-13 11:10 UTC17,439star +36 / 7 天2,872fork同步于 2026-11-10 23:26 UTC

怎么上手

由 README 提炼,执行前请确认
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
python main.py
硬件要求按 README 说明

README 未说明硬件要求,仅要求 Python 3.12 及以上;Mac OS、Windows 10 及以上可直接下载已编译程序运行。

有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

抖音/TikTok 作品批量下载与数据采集工具,支持终端交互和 Web API 调用

抖音和 TikTok 作品下载与数据采集工具,支持批量抓取视频、评论等数据并导出 CSV,可通过 Docker 部署。

核心能力

  • 批量下载抖音/TikTok 视频、图集、实况与最高画质文件
  • 采集作品评论、账号详情、搜索与热榜数据
  • 数据可持久化为 CSV/XLSX/SQLite 格式
  • 支持多线程下载、断点续传与跳过已下载文件
  • 提供 Web API 模式,可查阅自动生成的接口文档

容易踩的坑

需自行准备并配置 Cookie 才能采集数据;加密参数算法已不再维护,平台更新后部分功能可能失效需自行提供生成代码;Web UI 模式代码尚未更新,当前不可用。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本5.8
  1. 5.8DouK-Downloader V5.8最新正式版2026-09-13 · 2026-09-13 11:10 UTC

    更新内容:

    1. API 模式搜索接口增加 offset 和 count 参数
    2. 修复部分 TikTok 账号提取 sec_user_id 失败的问题
    3. 修复 API 模式账号作品接口部分参数不生效的问题
    4. 修复配置文件 tab 参数无效导致报错的问题
    5. 修复 API 模式搜索接口多页数据报错的问题
    6. 修复 API 模式搜索接口结果为空报错的问题
    7. 修复 TikTok 平台批量下载账号作品功能
    8. 修复 TikTok 平台批量下载合集作品功能
    9. 修复报错时可能损坏 XLSX 文件的问题
    10. TikTok 平台新增 X-Gnarly 请求参数
    11. 实现动态加载外部 Python 代码功能
    12. 使用 curl_cffi 替代 httpx
    13. 移除 从浏览器读取 Cookie 功能
    14. 服务器模式默认启用局域网访问
    15. 优化提取 secUid 的正则表达式
    16. 修复请求参数编码错误的问题
    17. 支持下载最高质量视频文件
    18. 修复提取作品 ID 失败的问题
    19. 重构项目内置请求延时机制
    20. 恢复手动输入 Cookie 功能
    21. 增加文件下载缓冲机制
    22. 更新数据接口请求参数
    23. 更新项目英语翻译
    24. 修正项目功能描述
    25. 修复其他已知问题

    ⚠️ 升级提醒:本次升级请将旧版本程序文件夹下的 _internal\Volume 文件夹,复制到新版本程序所在的文件夹内(与主程序在同一目录)

  2. 5.7DouK-Downloader V5.72025-08-19 · 2025-08-19 14:55 UTC
    查看更新说明

    更新内容:

    1. 修复下载私密账号作品时出现 404 响应码的问题
    2. 修复 API 模式评论接口 source 参数无效的问题
    3. 修复 API 模式直播接口获取原始数据报错的问题
    4. 修复部分功能不支持 run_command 参数的问题
    5. 从浏览器读取 Cookie 失败时不再保存至配置文件
    6. 修复自定义 User-Agent 导致功能失效的问题
    7. 配置文件新增作品文件名称长度限制参数
    8. 修复直播分享链接获取数据失败的问题
    9. 优化 API 模式搜索接口的响应提示
    10. 修复 API 模式进度条冲突的问题
    11. 优化 TikTok 平台作品链接提取
    12. 新增监听剪贴板链接下载作品功能
    13. 修复 MacOS 下载直播报错的问题
    14. 搜索数据为空时不再保存至文件
    15. 支持设置直播下载的默认清晰度
    16. 重构复制粘贴写入 Cookie 功能
    17. 重构调用 ffmpeg 下载直播功能
    18. 配置与文件归集到单文件夹
    19. 优化提取链接的正则表达式
    20. 优化配置文件参数容错机制
    21. 恢复数据请求延时机制
    22. 优化程序运行提示
    23. 修复其他已知问题
    24. 其他细节优化
  3. 5.6TikTokDownloader V5.62025-05-10 · 2025-05-10 16:05 UTC
    查看更新说明

    更新内容:

    1. 修复 TikTok 平台获取直播推流地址功能报错的问题
    2. 修复账号只有共创作品且均不是作者时报错的问题
    3. 配置文件参数 original_cover 变更为 static_cover
    4. 修复实况作品与图集作品判断错误的问题
    5. 修复 TikTok 平台批量下载账号作品功能
    6. 移除作品采集数据的 视频分辨率 字段
    7. 修复数据包含非法字符导致报错的问题
    8. 修复搜索接口关键词编码错误的问题
    9. 优化视频作品分辨率数据提取逻辑
    10. 修复提取下载地址失败时程序异常
    11. 重构静态封面下载地址提取逻辑
    12. 优化 latest 参数设置规则
    13. 新增批量下载视频原画功能
    14. 新增实况作品处理数量统计
    15. 新增 TikTok 直播下载功能
    16. 重新开放 Web API 模式
    17. 优化语言代码获取逻辑
    18. 优化项目代码复用性
    19. 移除服务器部署模式
    20. 重构 Web API 模式
    21. 禁用扫码登录功能
    22. 禁用请求参数更新
    23. 更新项目英语翻译
    24. 移除内置延时机制
    25. 优化网络异常捕获
    26. 优化代码运行逻辑
    27. 支持 SOCKS 代理
    28. 优化运行状态提示
    29. 修复其他已知问题
  4. 5.5TikTokDownloader V5.52025-01-12 · 2025-01-12 13:25 UTC
    查看更新说明

    更新内容:

    1. update_cookie_tiktok 参数变更为 tiktok_platform 参数
    2. update_cookie 参数变更为 douyin_platform 参数
    3. default_mode 参数变更为 run_command 参数
    4. 修复 TikTok 直播推流地址不显示的问题
    5. 修复未输入收藏合集序号报错的问题
    6. 修复从文本文档读取链接异常的问题
    7. 使用 rookiepy 替代 browser-cookie3
    8. 修复调用 FFmpeg 下载直播功能
    9. 优化从浏览器读取 Cookie 功能
    10. 支持更多 TikTok 合辑链接格式
    11. 支持最高分辨率视频文件下载
    12. 修复代理参数测试报错的问题
    13. 修复作品文件响应为空的问题
    14. 优化 run_command 参数功能
    15. 新增实况/动图作品下载功能
    16. 恢复作品评论数据采集功能
    17. 恢复账号详细数据采集功能
    18. 恢复搜索结果数据采集功能
    19. 优化作品文件名称处理逻辑
    20. 优化文件名称非法字符处理
    21. 重构视频下载地址提取逻辑
    22. 优化 earliest 参数设置规则
    23. 适配最新版 FFmpeg 命令
    24. 日志不再记录请求体数据
    25. 捕获中断程序的异常错误
    26. 优化重定向链接获取逻辑
    27. 更新 proxy 参数设置规则
    28. 优化检查版本更新功能
    29. 优化请求参数编码处理
    30. 优化音乐文件格式判断
    31. 新增文件断点续传功能
    32. 修复删除下载记录功能
    33. 捕获响应码异常的错误
    34. 优化文件名称长度限制
    35. 优化程序运行状态提示
    36. 更新网络接口请求参数
    37. 适配新版本 HTTPX 库
    38. 移除直播内置下载器
    39. 新增英语语言支持
    40. 优化文件下载功能
    41. 优化代理测试逻辑
    42. 修复其他已知问题
    43. 优化代码运行逻辑
    44. 其他细节优化
  5. 5.4TikTokDownloader v5.42024-07-21 · 2024-07-21 05:35 UTC
    查看更新说明

    更新日志:

    1. 新增获取 TikTok 直播推流地址功能
    2. 优化批量下载 TikTok 账号作品功能
    3. 更新扫码登录获取 Cookie 功能
    4. 优化自动更新 Cookie 参数功能
    5. 优化从浏览器读取 Cookie 功能
    6. 优化批量下载 TikTok 作品功能
    7. 新增 TikTok 直播视频下载功能
    8. 新增 TikTok 合集作品下载功能
    9. 暂时禁用抖音评论数据采集功能
    10. 暂时移除抖音账号数据采集功能
    11. 暂时移除抖音搜索数据采集功能
    12. 优化抖音图集下载链接提取逻辑
    13. 使用 HTTPX 替代 AIOHTTP
    14. 更新项目映射数据储存位置
    15. 更新作品下载记录储存位置
    16. 新增支持更多作品链接格式
    17. 新增收藏合集作品下载功能
    18. 新增收藏夹作品下载功能
    19. 新增收藏音乐下载功能
    20. 优化文件下载进度条效果
    21. 暂时移除服务器部署模式
    22. 暂时移除 Web API 模式
    23. 暂时移除 Web UI 模式
    24. 更新加密参数生成算法
    25. 优化处理链接统计功能
    26. 新增网络请求延时机制
    27. 移除储存数据无效字段
    28. 简化网络请求头参数
    29. 修复其他已知 Bug
    30. 其他细节优化

    5.4 对项目代码进行了重构,部分模式代码未重构完成,未来开发完成将会重新开放!

    从 5.3 更新至 5.4 时,请在更新文件后运行 升级工具,根据提示操作,更新配置文件参数及迁移旧版数据!

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    📝 项目功能

    💻 程序截图

    终端交互模式

    终端模式截图


    终端模式截图


    终端模式截图

    Web UI 交互模式

    该模式代码尚未更新,未来重构完成重新开放!

    Web API 接口模式

    WebAPI模式截图


    WebAPI模式截图

    启动该模式后,访问 http://127.0.0.1:5555/docs 或者 http://127.0.0.1:5555/redoc 可以查阅自动生成的文档!

    API 调用示例代码

    from curl_cffi.requests import post
    from rich import print
    
    
    def demo():
        headers = {"token": ""}
        data = {
            "detail_id": "0123456789",
            "pages": 2,
        }
        api = "http://127.0.0.1:5555/douyin/comment"
        response = post(api, json=data, headers=headers)
        print(response.json())
    
    
    demo()
    

    📋 项目说明

    快速入门

    Docker 容器

    关于 Cookie

    点击查看 Cookie 获取教程

    • Cookie 仅需在失效后重新写入配置文件,并非每次运行程序都要写入配置文件!

    • 程序获取数据失败时,可以尝试更新 Cookie 或者使用已登录的 Cookie!

    其他说明

    本指南将引导您通过 Fork 本仓库并执行 GitHub Actions 自动完成基于最新源码的程序构建和打包!


    使用步骤

    1. Fork 本仓库
    1. 点击项目仓库右上角的 Fork 按钮,将本仓库 Fork 到您的个人 GitHub 账户中
    2. 您的 Fork 仓库地址将类似于:https://github.com/your-username/this-repo

    2. 启用 GitHub Actions
    1. 前往您 Fork 的仓库页面
    2. 点击顶部的 Settings 选项卡
    3. 点击右侧的 Actions 选项卡
    4. 点击 General 选项
    5. 在 Actions permissions 下,选择 Allow all actions and reusable workflows 选项,点击 Save 按钮

    3. 手动触发打包流程
    1. 在您 Fork 的仓库中,点击顶部的 Actions 选项卡
    2. 找到名为 构建可执行文件 的工作流
    3. 点击右侧的 Run workflow 按钮:
      • 选择 master 或者 develop 分支
      • 点击 Run workflow

    4. 查看打包进度
    1. 在 Actions 页面中,您可以看到触发的工作流运行记录
    2. 点击运行记录,查看详细的日志以了解打包进度和状态

    5. 下载打包结果
    1. 打包完成后,进入对应的运行记录页面
    2. 在页面底部的 Artifacts 部分,您将看到打包的结果文件
    3. 点击下载并保存到本地,即可获得打包好的程序

    注意事项

    1. 资源使用:

      • Actions 的运行环境由 GitHub 免费提供,普通用户每月有一定的免费使用额度(2000 分钟)
    2. 代码修改:

      • 您可以自由修改 Fork 仓库中的代码以定制程序打包流程
      • 修改后重新触发打包流程,您将得到自定义的构建版本
    3. 与主仓库保持同步:

      • 如果主仓库更新了代码或工作流,建议您定期同步 Fork 仓库以获取最新功能和修复

    Actions 常见问题

    Q1: 为什么我无法触发工作流?

    A: 请确认您已按照步骤 启用 Actions,否则 GitHub 会禁止运行工作流

    Q2: 打包流程失败怎么办?

    A:

    • 检查运行日志,了解失败原因
    • 确保代码没有语法错误或依赖问题
    • 如果问题仍未解决,可以在本仓库的 Issues 页面 提出问题
    Q3: 我可以直接使用主仓库的 Actions 吗?

    A: 由于权限限制,您无法直接触发主仓库的 Actions。请通过 Fork 仓库的方式执行打包流程

    程序更新

    💝 项目赞助

    Swiftproxy


    SX.ORG


    DartNode

    Powered by DartNode


    TikHub

    ♥️ 支持项目

    ✉️ 联系作者

    ⚠️ 免责声明

    💡 参考与致谢