目前我开发了一个运行在服务器上的自动签到脚本,由于登录会话会过期需要重新登录,而重新登录时需要处理验证码。我采用的解决方案是: 当检测到需要验证码时,启动一个后端服务,包含返回页面和 websocke 接口 使用 Puppeteer 截取验证码 DOM 元素 在手机上打开前端页面进行操作 通过 WebSocket 将截图实时推送到前端 将操作坐标转换为实际 DOM 坐标 使用 Puppeteer 将操作映射到后台页面,调用 mousedown 和 mousemove api 完成滑块验证,同时一直截图更新返回给前端防止拉过头或者没对准。
操作精度不足 图片传输未经压缩,导致带宽压力过大
寻求更优的解决方案,主要关注: 提高操作精度 优化图片传输效率 整体方案改进建议
![]() |
1
ysc3839 33 天前 via Android
直接访问 devtools 的端口就能看到画面并远程操作
|
2
yjw06282 33 天前
我最近也在做类似的东西. 我有个比较取巧的办法
在 docker 中启了一个带 webvnc 的 chromium 然后用 Puppeteer 直连 chromium, 不使用无头模式 这样可以实时在 web 中可视检查页面状态,方便调试, 然后也可以随时人工接管流程 docker: https://hub.docker.com/r/linuxserver/chromium |
3
bqzzd 33 天前
滑块的话,直接在服务器处理掉就行,从根源上解决问题
|