◆

qr-login —— 第三方网站微信扫码登录 + 二维码推送

2026-08-29 09:300

qr-login:第三方网站微信扫码登录

人不在电脑前、又需要登录某个只支持微信扫码的第三方网站时,让 agent 在 ego-lite 隔离空间里把二维码抓出来推到手机上;扫码确认后,agent 继续在原 task space 复核平台登录态。

用法

直接说目标即可:

  • 「登录掘金」/「帮我登一下知乎」
  • 「登录 CSDN,把微信小程序码推给我」
  • 「登录简书」/「登录今日头条」/「登录博客园」/「登录 51CTO」
  • 「登录 SegmentFault,用微信扫码」
  • 「扫码登录 xx 网站,把二维码推给我」

agent 会复用(或创建)名为 qr-login-<平台> 的 task space。八个内置站点分别按已实测路径完成刷新、交互、抓码和保存。

流程与踩坑

  1. 微信入口因站而异:掘金、知乎要绕过平台默认 App 码;CSDN 使用登录 iframe 中的微信小程序码;简书、今日头条走标准微信 OAuth;博客园、51CTO 使用站内公众号二维码。
  2. 今日头条协议框是自定义控件:真实节点为 span.web-login-confirm-info__checkbox[role="checkbox"],不是原生 input。点击后必须严格读回 aria-checked="true",否则禁止继续打开微信 OAuth。
  3. OAuth popup 必须保留:微信入口用 ego 真实鼠标点击,DOM .click() 会因缺少用户激活被 Chromium 拦截。通过点击前后的 targetId 差集锁定原始 open.weixin.qq.com/connect/qrconnect target,再用 CDP session 直接控制;不能关掉后复制 URL 到新 tab,掘金会因 opener 上下文丢失在回调时报参数错误。
  4. 快捷登录视图要真实切换:微信记住头像时会显示「使用微信快捷登录」。先读 .js_switchToNormal 的 rect,再向 popup session 发送真实鼠标按下/抬起;元素 .click() 可能不切视图。必须同时验证切换按钮消失且二维码真实可见,不能被页面预置节点骗过。
  5. 二维码同源抓取:img.js_qrcode_img 的 src 是 open.weixin.qq.com/connect/qrcode/*,在页面里 fetch(credentials: 'include') 拿二进制,不落 URL。
  6. 推送走 scripts/notify-qr.py:BeeImg 图床(失败回退 Uguu)+ PushPlus HTML 图片消息,可选 ntfy 附件提醒。脚本不读任何密钥文件,PUSHPLUS_TOKEN 等一律由调用方 export——私有封装 vft-ai:qr-login-private 负责从 .secrets/ 供给;公众号流程复用同一脚本时加 --title-prefix 公众号。
  7. CSDN 是专用分支:二维码为 .login-code-wechat .public-code img 的 JPEG data URI,直接解码;不能等待 open.weixin.qq.com。扫码可能登录或注册 CSDN。
  8. 站内公众号二维码也是专用分支:博客园、51CTO 的二维码来自 mp.weixin.qq.com,不能等待 open.weixin.qq.com/connect/qrconnect;博客园扫码会同时关注博客园服务号。
  9. SegmentFault 是嵌入式 OAuth:二维码位于 #weixinQrCode iframe。快捷登录切换按钮会被 160px iframe 裁掉,需临时扩高父容器后真实点击;iframe 内图片 fetch 可能被跨域拒绝,此时按父页 iframe rect 截顶部二维码区域。登录验证的导航和稳定 DOM 检查分两个 heredoc,避免重定向瞬间的 target 切换误报。
  10. 扫码是真人步骤:推码成功后停止浏览器操作。回复「继续」或要求继续当前任务即自动重新接管,以 OAuth 回调或平台首页真实登录态复核为准。

支持范围

当前 skill 内置支持掘金、知乎、简书、今日头条、博客园、51CTO、CSDN、SegmentFault;其他站点需先实测登录入口和二维码形态,不能直接套用。

平台实测矩阵

截至 2026-08-29:

分类平台
已完成真实扫码登录掘金、知乎、简书、今日头条、博客园、51CTO、CSDN、SegmentFault

CSDN 从官方登录 iframe 打开 code=applets 页面,等待 280×280 JPEG data URI 小程序码并直接解码;已经完成真实扫码及首页登录态复核。

简书、今日头条走标准 open.weixin.qq.com OAuth,已经完成真实扫码及站内登录态复核;博客园、51CTO 走站内 mp.weixin.qq.com 公众号二维码,其中博客园扫码会同时关注博客园服务号,两站均已完成登录态复核。

SegmentFault 在站内嵌入 160×160 的跨域微信 OAuth iframe。实测需要附着 OOPIF、处理被裁掉的快捷登录切换按钮,再严格排除隐藏节点和过期模糊码;已经完成真实扫码及首页账号入口、头像复核。

💬留言板0

还没有留言,来发表第一条吧~

PAGE LOAD / LIVEqr-login —— 第三方网站微信扫码登录 + 二维码推送加载中