BiliLiveTool源码构建教程:从克隆bilibili_live_stream_code仓库到本地运行,完整步骤

原创2026-09-23 13:05:481,841 阅读
文章标签:桌面应用直播WebSocket跨平台

BiliLiveTool源码构建教程:从克隆bilibili_live_stream_code仓库到本地运行,完整步骤

BiliLiveTool(仓库名 bilibili_live_stream_code)是一款用于获取 B 站直播推流码的开源桌面工具,支持一键开/关播、管理直播标题与分区,并实时显示弹幕和礼物消息。本文面向新手,带你走完 克隆仓库 → 配置环境 → 构建前端 → 安装依赖 → 本地运行 → 打包发布 的完整源码构建流程,跟着做即可完成从源码到可执行程序的落地。

🎯 它能做什么

先花 1 分钟了解项目定位,帮助你理解为什么要从源码构建:

  • 获取第三方推流码:拿到 RTMP / SRT 推流地址,绕开官方直播姬,直接对接 OBS 等推流软件开播
  • 开关播 + 标题分区管理:开播时自定义标题与直播分区
  • 弹幕监控与互动:监控进场消息、礼物消息,并支持发送弹幕
  • 托盘常驻:支持最小化到系统托盘,通过托盘快捷开播 / 关播

核心入口是 main.py,它基于 pywebview 创建无边框窗口,加载前端页面并挂载后端 ApiService;业务逻辑被拆分到 backend/services/ 下的多个服务模块。

🧩 环境要求

构建前请先确认本机已安装以下运行时(版本来自 README.md):

组件 最低版本 用途
Python 3.9+ 后端与打包
Node.js 18+ 构建 Vue 前端
Git 任意较新版本 克隆仓库

💡 检查命令:python --version、node -v、git --version。

📥 第一步:克隆仓库

使用 Git 克隆 bilibili_live_stream_code 仓库到本地:

git clone https://gitcode.com/gh_mirrors/bi/bilibili_live_stream_code
cd bilibili_live_stream_code

克隆完成后,你得到的顶层结构大致如下:

🎨 第二步:构建前端

前端基于 Vue 3 + Vite,产物输出到 frontend/dist。进入 frontend/ 目录执行:

cd frontend
npm install
npm run build
cd ..

构建配置见 vite.config.js,build.outDir 指定为 dist,后端会读取 frontend/dist/index.html(见 main.py)。

⚠️ 这一步必须在运行/打包前完成,否则窗口找不到页面。

🐍 第三步:安装后端依赖

在项目根目录安装 requirements.txt 中的依赖,并补上打包与图标库:

pip install -r requirements.txt
pip install pyinstaller Pillow

Linux 用户从源码运行时,建议额外安装托盘支持(README.md 说明):

pip install PyGObject

若启动时提示 Qt platform plugin "xcb" could not be found,可执行:sudo apt install libxcb-xinerama0 libxcb-cursor0 libnss3。

▶️ 第四步:本地运行

依赖就绪后,直接运行主入口即可在开发模式启动窗口:

python main.py

程序启动流程(参考 main.py):初始化 ApiService → 创建 1000×720 无边框窗口 → 加载前端 → 根据平台挂载系统托盘(Windows 用 pystray,Linux 用 Qt QSystemTrayIcon)。

上手三步走(对应 README.md 使用教程):

  1. 扫码登录 B 站账号
  2. 填写标题并选择分区(首次需点 同步)
  3. 点击 开始直播,在 推流码 面板复制地址到 OBS

📌 注意:在 OBS 里点"停止直播"并不会真正关播,需回到本工具点 停止直播 或关闭软件。

📦 第五步:打包为可执行程序(可选)

若想把源码打包成单文件可执行程序(BiliLiveTool),使用 PyInstaller 并打包前端 dist 目录。三大平台命令如下:

Windows

pyinstaller main.py --name BiliLiveTool --onefile --add-data "frontend/dist;frontend/dist" --icon "bilibili.ico" --noconsole

macOS

pyinstaller main.py --name BiliLiveTool --onefile --add-data "frontend/dist:frontend/dist" --icon "bilibili.icns" --hidden-import _cffi_backend --windowed

Linux

pyinstaller main.py --name BiliLiveTool --onefile \
 --add-data "frontend/dist:frontend/dist" \
 --add-data "bilibili.ico:." \
 --icon "bilibili.png" \
 --hidden-import _cffi_backend \
 --hidden-import cffi \
 --hidden-import qtpy \
 --hidden-import PyQt5 \
 --hidden-import webview.platforms.qt

打包完成后,可执行文件位于 dist/ 目录。

🛠️ 源码导读:关键模块在哪里

构建完成后,如果想二次开发,可优先看这些文件(均提供相对路径):

❓ 常见问题排查

  • 窗口空白 / 找不到页面:确认已执行 npm run build,frontend/dist/index.html 存在。
  • Linux 无托盘图标:从源码运行需 pip install PyGObject;程序仍可运行,仅缺托盘。
  • macOS 适配:作者主要维护 Windows/Linux,macOS 建议自行验证,图标转换命令见 README.md。
  • 版本信息:当前 VERSION 为 v2.3.17,依赖见 requirements.txt 与 pyproject.toml。

小结:整个 BiliLiveTool 源码构建只需 5 步——克隆仓库、npm run build 构建前端、pip 安装后端依赖、python main.py 本地运行,最后用 PyInstaller 一键打包成 BiliLiveTool 可执行文件。掌握这套流程后,你就能在本地自由修改推流、弹幕、开关播逻辑并快速验证了。

登录后查看全文
bilibili_live_stream_code