🔥 TikTok 视频/图集/原声;抖音主页/视频/图集/收藏/直播/原声/合集/评论/账号/搜索/热榜数据采集工具:完全开源,基于 Requests 模块实现;批量下载抖音账号发布、喜欢、收藏的作品;单独下载抖音链接或 TikTok 链接对应的作品;获取抖音直播推流地址;下载抖音直播视频;采集抖音作品评论数据;批量下载抖音合集作品;采集抖音账号详细数据;采集抖音用户 / 作品搜索结果;采集抖音热榜数据。
⭐ Windows 10 及以上用户可前往 Releases 下载已编译的 exe 程序,开箱即用!
- ✅ 下载抖音无水印视频/图集
- ✅ 下载 TikTok 无水印视频/图集
- ✅ 批量下载抖音账号发布/喜欢/收藏作品
- ✅ 支持单次输入多个链接
- ✅ 多账号批量下载作品
- ✅ 自动跳过已下载的文件
- ✅ 持久化保存采集数据
- ✅ 下载动态/静态封面图
- ✅ 获取抖音直播推流地址
- ✅ 下载抖音直播视频
- ✅ Web UI 交互界面
- ✅ 采集抖音作品评论数据
- ✅ 批量下载抖音合集作品
- ✅ 记录点赞收藏等统计数据
- ✅ 筛选作品发布时间
- ✅ 支持账号作品增量下载
- ✅ 支持使用代理采集数据
- ✅ 支持局域网远程访问
- ✅ 采集抖音账号详细数据
- ✅ 作品统计数据更新
- ✅ 自动更新账号昵称
- ✅ 部署至私有服务器
- ✅ 部署至公开服务器
- ✅ 采集抖音搜索数据
- ✅ 采集抖音热榜数据
- ✅ 记录已下载作品 ID
- ✅ 扫码登陆获取 Cookie
- ✅ 支持 Web API 调用
- ✅ 支持多线程下载作品
- ✅ 文件完整性处理机制
- 🟢 Releases 发布的源码已完成测试,所有功能均可正常使用
- 🟢 正在重构项目代码,提高代码复用性和可维护性
- 🟢 准备优化配置文件的参数格式
- 🟢 准备优化批量下载账号收藏作品功能
- 🟡 未来可能支持更多抖音热榜类型
- 🟡 未来可能优化 Web API 接口模式,使其支持并发请求
- 🟡 未来可能使用 FFmpeg 优化直播下载功能
- 🟡 未来可能使用 Rich 库优化彩色提示功能
- 🟡 未来可能新增终端文本用户界面(TUI)模式
- 🟡 未来可能新增获取账号关注列表功能
- 🟡 未来可能新增获取账号收藏合集列表功能
- 🟡 未来可能新增 TikTok 平台批量下载功能
- 🔴 最新版本的源码可能存在不稳定的 Bug
- 🔴 如果在使用过程中发现 Bug,请及时告知作者修复
- 🔴 开启多线程时,作品未下载成功也会记录作品 ID,未修复,关闭多线程可临时解决问题
- 🔴 账号昵称不是有效的文件夹名称时会导致程序报错,未修复,设置
mark
参数可临时解决问题
TikTokDownloader
├─ main.py // 项目程序启动入口
├─ requirements.txt // 程序所需第三方模块信息
├─ settings.json // 运行参数配置文件
├─ src // 项目模块源码文件夹
│ ├─ CookieTool.py // Cookie 处理模块
│ ├─ Customizer.py // 项目代码调整模块
│ ├─ Configuration.py // 配置文件处理模块
│ ├─ DataAcquirer.py // 接口数据获取模块
│ ├─ DataExtractor.py // 抖音数据提取模块
│ ├─ DataDownloader.py // 作品文件下载模块
│ ├─ FileCache.json // 文件管理缓存数据
│ ├─ FileManager.py // 作品文件管理模块
│ ├─ Parameter.py // 加密参数生成模块
│ ├─ Recorder.py // 日志及数据记录模块
│ ├─ StringCleaner.py // 非法字符处理模块
│ ├─ main_complete.py // 终端命令行模式启动入口
│ ├─ main_server.py // 服务器部署模式启动入口
│ ├─ main_api_server.py // Web API 接口模式启动入口
│ └─ main_web_UI.py // Web UI 交互模式启动入口
├─ cache // 缓存数据文件夹
│ └─ IDRecorder.txt // 作品下载记录文件
├─ static // 静态资源文件夹
├─ templates // HTML 模板文件夹
└─ docs // 项目文档文件夹
快速入门:
- 下载 EXE 程序 或者 配置运行环境
- 直接运行程序
- 下载 Releases 发布的 EXE 程序压缩包
- 解压后打开程序文件夹,双击运行
main.exe
- 通过源码运行
- 安装不低于
3.10
版本的 Python 解释器 - 下载最新的源码或 Releases 发布的源码至本地
- 安装 requirements.txt 包含的第三方模块
- 运行 main.py
- 将 Cookie 信息写入配置文件
- 手动复制粘贴
- 使用浏览器打开抖音网页版,复制全部 Cookie 至剪贴板
- 选择
复制粘贴写入 Cookie
模式,按照提示将 Cookie 写入配置文件
- 扫码登录获取
- 选择
扫码登陆写入 Cookie
模式,程序会显示登录二维码图片 - 使用抖音 APP 扫描二维码并登录账号,操作后关闭图片窗口(若有)
- 按照提示将 Cookie 写入配置文件
- 返回程序界面,依次选择
终端命令行模式
-->单独下载链接作品
- 输入抖音或 TikTok 作品链接即可下载作品文件
- 更多详细说明请查看 项目文档
⭐ 推荐使用 Windows 终端 运行程序!
关于 Cookie:
程序功能 | 是否需要登录 |
---|---|
下载账号发布作品 | ⭕ |
下载账号喜欢作品 | ⭕ |
下载链接作品 | ❌ |
获取直播推流地址 | ❌ |
下载直播视频 | ❌ |
获取作品评论数据 | ⭕ |
下载合集作品 | ❌ |
获取账号数据 | ⭕ |
采集搜索结果 | ❌ |
采集热榜数据 | ❌ |
下载账号收藏作品 | ✔️ |
程序获取数据失败时,可以尝试使用已登录的 Cookie 运行!
其他说明:
- 程序提示用户输入时,直接回车代表返回上级菜单,输入
Q
或q
代表结束运行 - 由于获取账号喜欢作品和收藏作品数据仅返回喜欢 / 收藏作品的发布日期,不返回操作日期,因此程序需要获取全部喜欢 / 收藏作品数据再进行日期筛选;如果作品数量较多,可能会花费较长的时间;可通过
pages
参数控制请求次数 - 使用
SQLite
格式储存数据时,重复获取作品数据将会更新点赞收藏等统计数据 - 获取私密账号的发布作品数据需要登录后的 Cookie,且登录的账号需要关注该私密账号
- 批量下载账号作品或合集作品时,如果对应的昵称或标识发生变化,程序会自动更新已下载作品文件名称中的昵称和标识
- 程序下载文件时会先将文件下载至临时文件夹,下载完成后再移动至储存文件夹;程序运行结束时会清空临时文件夹
- 如果想要自定义程序功能,可以直接修改
src/Customizer.py
文件内容,已整理程序功能修改指引 批量下载收藏作品模式
目前仅支持下载当前已登录 Cookie 对应账号的收藏作品,暂不支持多账号- 如果想要程序使用代理,必须在
settings.json
设置proxies
参数,否则程序不会使用代理
- 使用者对本项目的使用由使用者自行决定,并自行承担风险。作者对使用者使用本项目所产生的任何损失、责任、或风险概不负责。
- 本项目的作者提供的代码和功能是基于现有知识和技术的开发成果。作者尽力确保代码的正确性和安全性,但不保证代码完全没有错误或缺陷。
- 使用者在使用本项目时必须严格遵守 GNU General Public License v3.0 的要求,并在适当的地方注明使用了 GNU General Public License v3.0 的代码。
- 使用者在任何情况下均不得将本项目的作者、贡献者或其他相关方与使用者的使用行为联系起来,或要求其对使用者使用本项目所产生的任何损失或损害负责。
- 使用者在使用本项目的代码和功能时,必须自行研究相关法律法规,并确保其使用行为合法合规。任何因违反法律法规而导致的法律责任和风险,均由使用者自行承担。
- 本项目的作者不会提供 TikTokDownloader 项目的付费版本,也不会提供与 TikTokDownloader 项目相关的任何商业服务。
- 基于本项目进行的任何二次开发、修改或编译的程序与原创作者无关,原创作者不承担与二次开发行为或其结果相关的任何责任,使用者应自行对因二次开发可能带来的各种情况负全部责任。
微信(WeChat) | 支付宝(Alipay) |
---|---|
- QQ Group: 830227445
- Email: yonglelolu@gmail.com
TikTokDownloader 是我个人独立维护的一个开源项目,鉴于个人精力有限,请理解项目进展可能较为缓慢,我会尽力保持更新和维护,以确保项目的稳定性和功能的不断改进。
如果您通过 Email 联系我,我可能无法及时查看并回复信息,我会尽力在七天内回复您的邮件;如果有紧急事项或需要更快的回复,请通过其他方式与我联系,谢谢理解!
- https://github.com/Evil0ctal/Douyin_TikTok_Download_API
- https://github.com/Johnserf-Seed/TikTokDownload
- https://github.com/davidteather/TikTok-Api
- https://requests.readthedocs.io/en/latest/
- https://dormousehole.readthedocs.io/en/latest/
- https://github.com/B1gM8c/X-Bogus
- https://html5up.net/hyperspace