Python

DouYin_Spider

抖音逆向,抖音爬虫,抖音全部api、私信、直播间监听

C

cv-cat

Dernière activité 28 sept. 2026
cv-cat/DouYin_Spider

3,2 k

étoiles

863

forks

78

issues ouvertes

Ce README est souvent en anglais.

Douyin_Spider logo

🎶DouYin_Spider

❤️Sponsor

Vectrust

Sponsored by Vectrust @ OpenDev Org & NextRouter Alliance

想出现在这里?


FastAIToken

FastAIToken 是面向开发者的 AI API 聚合平台,支持 OpenAI、Claude、Gemini 等主流大模型,兼容 OpenAI API 协议,可无缝接入 Claude Code、Codex、Gemini CLI、Cherry Studio、Cline、Continue 等各类 AI 开发工具。平台采用 充值 1:1(1 元 = 1 美元 API 额度),帮助开发者以更低成本、更高效率地使用全球领先的大模型服务。

平台提供多个可选分组与公开状态页,开发者可根据成本、响应速度和稳定性自由选择不同渠道,并享受 7×24 小时真人技术支持(非机器人)。

主要做 AI 开发接入?可以试试 FastAIToken,兼容 Codex / Claude Code / Gemini CLI 等主流工具。


✨ 专业的抖音数据采集与交互解决方案,支持数据爬取、直播间监听、私信收发、创作者发布等功能

大模型时代,自动化是每个开发者都绕不开的课题。 当你想让 AI Agent 真正落地到抖音——自动处理私信、感知直播间动态、驱动内容互动——第一道墙往往不是模型能力,而是平台通信能力的缺失。

本项目做的事很简单:把这道墙拆掉。

⚠️ 严禁用于发布不良信息、违法内容!本项目仅供学习与技术研究使用,如有侵权请联系作者删除,后果自负。

🌟 功能特性

  • ✅ 多维度数据采集
    • 用户主页信息 / 作品详情
    • 评论区数据(含多级回复)
    • 智能搜索(视频 / 用户 / 直播)
    • 关注 / 粉丝列表
    • 消息通知 / 收藏列表 / 推荐流
  • 🎙️ 直播间实时监听
    • 弹幕消息 / 礼物(含送礼对象)/ 进场 / 关注 / 点赞 / 房间热度
    • PK 实时事件 / PK 排行榜 / 直播间贡献榜
    • 直播间发送弹幕消息
    • 直播间点赞
  • 💬 抖音私信收发
    • WebSocket 实时接收私信(文本 / 表情包 / 语音 / 图片 / 分享视频)
    • 主动发送私信
    • 创建 / 查询会话列表
  • 🤝 互动操作
    • 点赞视频
    • 发布评论 / 回复评论
    • 收藏 / 移动 / 取消收藏作品
  • 📤 创作者中心
    • 发布图集 / 视频(支持可见范围、是否允许下载等设置)
  • 🔑 多种登录方式
    • Cookie / 扫码登录 / 手机号验证码登录
  • 🚀 高性能架构
    • 自动重试机制 / 断线重连
  • 🔒 安全稳定
    • 抖音最新 API 适配
    • 异常处理机制
    • proxy 代理
  • 🎨 便捷管理
    • 结构化目录存储
    • 格式化输出(JSON / EXCEL / MEDIA)

🎨效果图

处理后的所有用户

image

某个用户所有的视频\图集

image

某个视频\图集具体的内容

image

某个直播时的具体弹幕发言和礼物数据

image

保存的excel

image

🛠️ 快速开始

⛳运行环境

  • Python 3.9+
  • Node.js 18+(可选,仅部分直播 / 验证码场景会调用,主流程签名已全部纯 Python 实现)

🎯安装依赖

pip install -r requirements.txt

🎨配置文件

现在推荐只配置 DY_COOKIES:主站 Auth 会被作品接口、直播 REST/WebSocket 和创作者中心共同复用。 DY_LIVE_COOKIES 仍可作为旧版独立直播浏览器的显式覆盖,但不再是必填项。

配置文件在项目根目录.env文件中,将下图自己的登录cookie放入其中,cookie获取➡️在浏览器f12打开控制台,点击网络,点击fetch,找一个接口点开 image

复制cookie到.env文件中(注意!登录抖音后的cookie才是有效的,不登陆没有用) image

⚠️ 请在 www.douyin.com 登录后,从任意 /aweme/v1/web/ 接口请求中复制完整 cookie,确认其中包含 UIFID 字段。缺少 UIFID 时作品详情、搜索等接口会被风控拦截(Uifid Not Found)。

UIFID 是推荐流接口响应下发的设备标识,复制完整 Cookie 后会自动带上,用户不需要手工生成或填写。

写接口的 dtrait 配置

发布、评论、点赞、收藏等写接口会发送按请求路径重算的 x-tt-session-dtrait。项目默认加载随包的 utils/dtrait_profile.json,通常不需要额外配置;显式设置 DY_DTRAIT_BLOB 时会优先使用它。

utils/dtrait_features.py 是 dtrait 内层 VM 的纯 Python 实现,负责 Murmur3、特征标签、布尔位图和 base64 打包;档案里的渲染哈希是设备一次采样后复用的常量,外层 RSA/AES 则每次按请求路径和时间重新计算。

换设备时可以在 .env 中设置 DY_DTRAIT_PROFILE 指向自己的设备档案 JSON。抓取时在已登录的 www.douyin.com 打开开发者工具,在 Console 先执行下面的 hook,再回到页面触发一次点赞、收藏或评论请求:

(() => {
  const aes = window.DTraitUcAesEncrypt;
  if (!aes?.encryptData) throw new Error('dtrait SDK 尚未初始化,请先刷新并等待页面加载完成');
  const original = aes.encryptData;
  aes.encryptData = function (...args) {
    for (const value of args) {
      const text = typeof value === 'string' ? value : JSON.stringify(value ?? '');
      try {
        const payload = JSON.parse(text);
        if (payload?.dtrait) console.log('DY_DTRAIT_BLOB=', payload.dtrait);
      } catch (_) {}
    }
    return original.apply(this, args);
  };
  console.log('dtrait hook installed; now trigger one write request');
})();

把 Console 打印的 DY_DTRAIT_BLOB 值复制到 .env。不要复制完整 Cookie 或 x-tt-session-dtrait 外层密文;外层头会由项目按当前路径和时间重新生成。

🚀运行项目

# 数据爬取
python main.py

# 直播间监听(弹幕 / 礼物 / 点赞等)
python dy_live/server.py

# 抖音私信实时接收
python dy_apis/douyin_recv_msg.py

# 创作者中心快速发布图集 / 视频(先修改文件顶部的“用户配置”)
python quick_publish.py

🗝️注意事项

  • main.py 是爬虫入口,可根据需求自行修改调用
  • dy_apis/douyin_api.py 包含全部 API 接口封装,含直播间点赞、发消息、私信收发等
  • dy_live/server.py 包含直播间 WebSocket 监听逻辑
  • dy_apis/douyin_recv_msg.py 包含抖音私信 WebSocket 实时接收逻辑
  • dy_apis/douyin_creator_api.py 包含创作者中心上传 / 发布作品接口
  • dy_apis/login_api.py 包含扫码、手机号验证码登录逻辑
  • dy_live/pk.py 包含直播间 PK 事件解析

🍥日志

日期 说明
23/10/05 - 项目完成。
23/10/17 - 首次提交。
23/10/18 - 监听直播间弹幕和礼物。
23/10/21 - 新增搜索智能排序和限制时间。
23/10/21 - 新增可视化界面到release v1.1.0。
23/10/25 - 新增issue提出的输出直播间消息时包括用户等级。
23/10/28 - 遇到验证码请手动点击!Fix Some Bugs。
23/11/11 - 修复了很多很多大家的bug~~,关于v.dy格式的url正在处理
23/12/22 - 修复了直播间监控
25/06/07 - 开放所有之前闭源的代码,包括数据爬取和直播间监听
26/04/09 - 修复直播间礼物信息接收(含送礼对象);新增直播间点赞、直播间发弹幕;新增抖音私信实时接收(WebSocket)与主动发送功能
26/07/26 - 签名算法全部改为纯 Python 实现,主流程不再依赖 Node.js;私信支持浏览器登录
26/08/30 - 新增创作者中心发布图集 / 视频;新增扫码、手机号验证码登录
26/09/13 - 新增直播间贡献榜接口
26/09/19 - 新增直播间 PK 排行榜接口与 PK 实时事件监听
26/09/20 - 对齐直播间弹幕发送与作品评论发布接口
26/09/27 - 修复视频下载(CDN 需带 Referer,之前会把 403 页面存成 mp4);单个作品下载失败时跳过,不再中断整批

🤝 欢迎贡献 PR

本项目欢迎任何形式的贡献!如果你有新功能想法、Bug 修复或文档改进,欢迎提交 PR。

  • Fork 本仓库并在新分支上开发
  • 保持代码风格与现有代码一致
  • PR 描述中请简要说明改动内容和目的
  • 也欢迎通过 Issue 提出建议或报告问题

🧸额外说明

  1. 感谢star⭐和follow📰!不时更新
  2. 作者的联系方式在主页里,有问题可以随时联系我
  3. 可以关注下作者的其他项目,欢迎 PR 和 issue
  4. 感谢赞助!如果此项目对您有帮助,请作者喝一杯奶茶~~ (开心一整天😊😊)
  5. thank you~~~
微信赞赏码  支付宝收款码

📈 Star 趋势

Star History Chart

🍔 交流群

如果你对爬虫和 AI Agent 感兴趣,可以加入群聊一起讨论~

ps: 请加群,人满或者过期 issue | wx 提醒 | qq提醒

group-1 group-2 group-3 group-4 (2000人qq群)
group1 group2 group3 group3

Projets similaires

抖音逆向,抖音爬虫,抖音全部api、直播间监听

JavaScriptdouyindouyin-downloaddouyin-scraper
Ccvv-cat
278 étoiles92

抖音爬虫——采集账号主页、喜欢、收藏、音乐原声、话题、搜索、合集、作品、关注、粉丝等公开数据。

crawlerdouyinpython
Eerma0
1,6 k étoiles306

小红书笔记 | 评论爬虫、抖音视频 | 评论爬虫、快手视频 | 评论爬虫、B 站视频 | 评论爬虫、微博帖子 | 评论爬虫、百度贴吧帖子 | 百度贴吧评论回复爬虫 | 知乎问答文章|评论爬虫

Python
NNanmiCoder
65,9 k étoiles12,7 k