【开源】多平台弹幕连接工具
开源地址:项目首页 – Electron弹幕连接工具:多平台弹幕连接工具,基于nodejs和electron – GitCode

📖 项目简介
可遇AI弹幕工具是一个基于Electron开发的跨平台直播弹幕抓取工具,支持多个主流直播平台的实时弹幕数据获取。通过WebSocket技术实现弹幕数据的实时推送,为开发者和内容创作者提供便捷的弹幕数据接口。
✨ 主要功能
- 🎯 多平台支持:支持抖音、TikTok、快手、BiliBili、微信视频号等主流直播平台
- 🔄 实时弹幕抓取:通过WebSocket实时获取直播间弹幕、礼物、点赞等互动数据
- 📡 WebSocket服务:内置WebSocket服务器(端口12011),支持多客户端连接
- 🎨 现代化界面:基于Bootstrap 5构建的美观用户界面
- 🔧 简单易用:只需输入直播间网址即可开始抓取弹幕
- 📊 数据格式化:自动解析Protobuf数据并转换为JSON格式
- 🎭 多种消息类型:支持弹幕、礼物、点赞、关注、分享等多种互动消息
🛠️ 技术栈
核心框架
- Electron
^32.3.3– 跨平台桌面应用开发框架 - Node.js – JavaScript运行时环境
前端技术
- HTML5 – 页面结构
- CSS3 – 样式设计(包含动画效果)
- JavaScript (ES6+) – 交互逻辑
- Bootstrap 5.3.0 – UI框架
- Bootstrap Icons – 图标库
后端技术
- WebSocket (ws)
^8.18.0– 实时通信 - Protobufjs
^7.4.0– Protocol Buffers数据解析
开发工具
- Electron Forge
^7.4.0– 应用打包和分发 - Nodemon
^3.1.4– 开发时自动重启
数据处理
- @bufbuild/protobuf
^2.6.0– Protobuf数据处理 - MD5
^2.3.0– 数据加密 - Zlib – 数据压缩解压
🚀 使用方法
安装运行
- 克隆项目
123git <span class="hljs-built_in">clone</span> [项目地址]<span class="hljs-built_in">cd</span> electron弹幕工具</code><button class="copy_btn md-view-copy-icon" title="copy"></button> - 安装依赖
12npm install</code><button class="copy_btn md-view-copy-icon" title="copy"></button> - 开发模式运行
1234npm run dev<span class="hljs-comment"># 或者</span>npm run <span class="hljs-built_in">test</span></code><button class="copy_btn md-view-copy-icon" title="copy"></button> - 打包应用
1234npm run package<span class="hljs-comment"># 或者制作安装包</span>npm run make</code><button class="copy_btn md-view-copy-icon" title="copy"></button>
使用步骤
- 启动应用:运行应用后会自动启动WebSocket服务器(端口12011)
- 输入直播间网址:在输入框中粘贴支持平台的直播间链接
- 抖音:
https://live.douyin.com/xxxxxx - TikTok:
https://www.tiktok.com/@username/live - 快手:
https://live.kuaishou.com/u/xxxxxx - BiliBili:
https://live.bilibili.com/xxxxxx - 微信视频号:
https://channels.weixin.qq.com/live/xxxxxx
- 抖音:
- 进入直播间:点击”进入直播间”按钮,应用会自动打开直播间页面
- 接收弹幕数据:通过WebSocket连接到
ws://localhost:12011即可接收实时弹幕数据
WebSocket数据格式
连接到WebSocket服务器后,会收到以下格式的JSON数据:
|
1 2 3 4 5 6 7 8 9 |
<span class="hljs-punctuation">{</span> <span class="hljs-attr">"type"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"弹幕"</span><span class="hljs-punctuation">,</span> <span class="hljs-attr">"uid"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"用户ID"</span><span class="hljs-punctuation">,</span> <span class="hljs-attr">"name"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"用户昵称"</span><span class="hljs-punctuation">,</span> <span class="hljs-attr">"content"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"弹幕内容"</span><span class="hljs-punctuation">,</span> <span class="hljs-attr">"timestamp"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"时间戳"</span><span class="hljs-punctuation">,</span> <span class="hljs-attr">"platform"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"平台名称"</span> <span class="hljs-punctuation">}</span> </code><button class="copy_btn md-view-copy-icon" title="copy"></button> |
支持的消息类型:
弹幕– 用户发送的文字消息礼物– 用户赠送的礼物点赞– 用户点赞行为关注– 用户关注主播分享– 用户分享直播间进房– 用户进入直播间
💻 支持平台
| 平台 | 状态 | 支持功能 |
|---|---|---|
| 抖音 | ✅ 完全支持 | 弹幕、礼物、点赞、关注、分享、进房 |
| TikTok | ✅ 完全支持 | 弹幕、礼物、点赞、关注、分享、进房 |
| 快手 | ⚠️ 适配中 | 弹幕获取 |
| BiliBili | ⚠️ 适配中 | 弹幕获取 |
| 微信视频号 | ✅ 完全支持 | 弹幕、礼物、互动消息 |
操作系统支持
- ✅ Windows (Windows 10/11)
- ✅ macOS (macOS 10.14+)
- ✅ Linux (Ubuntu 18.04+, Debian 10+, CentOS 8+)
📁 项目结构
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
electron弹幕工具/ ├── douyin/ # 抖音弹幕解析模块 │ ├── lib/ # 核心库文件 │ ├── proto/ # Protobuf协议文件 │ └── main.js # 抖音数据解析入口 ├── tiktok/ # TikTok弹幕解析模块 │ ├── lib/ # 核心库文件 │ ├── proto/ # Protobuf协议文件 │ └── main.js # TikTok数据解析入口 ├── weixin/ # 微信视频号解析模块 │ └── main.js # 微信数据解析入口 ├── websocket/ # WebSocket服务模块 │ ├── websocket-server.js # WebSocket服务器 │ └── websocket-test.html # 测试页面 ├── page/ # 前端页面 │ ├── css/ # 样式文件 │ ├── js/ # JavaScript文件 │ ├── index.html # 主页面 │ └── render.js # 渲染进程脚本 ├── readme/ # 文档资源 ├── main.js # Electron主进程 ├── preload.js # 预加载脚本 ├── package.json # 项目配置 └── forge.config.js # 打包配置 </code><button class="copy_btn md-view-copy-icon" title="copy"></button> |
🔧 开发说明
核心原理
- 数据抓取:通过Electron的debugger API拦截WebSocket和HTTP请求
- 数据解析:使用Protobuf解析二进制数据格式
- 数据转发:通过内置WebSocket服务器实时推送解析后的数据
- 跨平台兼容:针对不同平台的API差异进行适配
关键技术点
- Protobuf解析:各平台使用不同的Protobuf协议,需要对应的.proto文件
- WebSocket拦截:通过Chrome DevTools Protocol拦截网络请求
- 数据压缩:部分平台数据使用gzip压缩,需要解压处理
- 反爬虫对策:模拟真实用户行为,包括鼠标移动等
扩展开发
如需添加新平台支持:
- 在对应平台目录下创建解析模块
- 分析平台的WebSocket协议和数据格式
- 编写对应的Protobuf解析逻辑
- 在主进程中注册新平台的处理逻辑
⚠️ 使用声明
法律声明
- 🚫 禁止商业用途:本项目仅供学习和个人使用,严禁用于任何商业目的
- 🚫 禁止违法使用:严禁将本工具用于任何违法违规的项目或活动
- ⚖️ 合规使用:使用本工具时请遵守相关平台的服务条款和法律法规
- 📝 免责声明:使用本工具产生的任何法律后果由使用者自行承担
技术声明
- 本工具仅用于技术研究和学习交流
- 请在使用前确保已获得相关平台的授权
- 建议在测试环境中使用,避免对生产环境造成影响
💬 交流与支持
技术交流群
- QQ群1:122517993
- QQ群2:145225093
联系方式
- 客服微信:wujie88488
- 官方网站:www.keyu.live

💰 支持项目
如果这个项目对您有帮助,欢迎支持我们的开发工作:
—
感谢您的使用和支持! 🙏
最后更新:2025年7月