【Bug/建议】Web 版(bili_tool_web)扫码登录在浏览器不弹二维码,仅输出到容器控制台 ASCII,建议提供可访问的二维码图片/链接

Author: BaJie041012Created Jul 24, 2026Updated Sep 10, 2026
Labelsenhancementdone

【Bug/建议】Web 版(bili_tool_web)扫码登录在浏览器中无二维码弹窗,仅输出到容器控制台(ASCII),建议提供可直接访问的二维码图片/链接

版本

  • BiliTool:bili_tool_web(ghcr.io/raywangqvq/bili_tool_web:latest,docker 部署)
  • 运行模式:docker
  • 系统:Linux

现象

在 Web 管理后台:左侧 Schedules → 找到 LoginJob → 点击 ▶ Trigger Now 后,浏览器没有任何二维码弹窗,看起来像“点了没反应”。

复现步骤

  1. 打开 Web 后台(默认 22330 端口),管理员登录
  2. 进入 Schedules,找到 LoginJob
  3. 点击该行的 Trigger Now
  4. 观察:浏览器无弹窗;查看容器日志 docker logs -f bili_tool_web 可见扫码登录的二维码是以 ASCII 字符画 打印在控制台里的,并且应用额外给出一条回退链接(tool.lu/qrcode/basic.html?text=...)。

根因分析

当前 web 版的扫码登录二维码只在服务端控制台输出 ASCII 字符画,并没有在 Web 页面里渲染成一张可扫的图片。对普通用户来说,Trigger Now 之后页面没有任何可视反馈,容易误以为功能坏了。

影响

  • 新用户首次添加 B 站账号时,不知道要去翻容器日志拿 ASCII 二维码或 tool.lu 链接,体验差。
  • 即便知情,ASCII 二维码也无法用手机直接扫,必须借助 tool.lu 回退链接,链路偏长。

建议修复

  1. (推荐)在 Web 页面内直接渲染可扫的二维码图片:把扫码 URL(https://account.bilibili.com/h5/account-h5/auth/scan-web?...&qrcode_key=xxx)用 qrcode 库生成图片,展示在 Trigger 后的弹窗/页面里;或
  2. 提供一个获取登录二维码的 API / 端点(类似 #994 的建议),返回 qrcode_key 与可直接访问的二维码图片 URL,方便自建前端。

临时可行方案(workaround,供其他用户参考)

监听容器日志提取最新 qrcode_key,再用公开二维码服务生成可扫图片页面即可正常登录。示例:用 docker logs -f bili_tool_web | grep qrcode_key 抓到 key 后,构造 https://api.qrserver.com/v1/create-qr-code/?size=320x320&data=<encodeURIComponent(扫码URL)> 即可在浏览器打开扫码。

相关 issue

  • #994(已关闭)建议增加获取登录二维码的 API
  • #1030(open)青龙不出二维码
  • #1034(open)docker 版扫码后超时
  • #1044(open)扫码等多功能无法正常运行

(说明:以上多为青龙 / 扫码后超时类问题;本条聚焦“web 版点 Trigger Now 后浏览器不弹二维码”这一具体体验问题。)

Source: RayWangQvQ/BiliBiliToolPro