通过 WebSocket 控制真实浏览器,实现导航、点击、输入、截图、DOM 获取等完整自动化操作。特点:真正的 Chromium 内核、WebSocket 实时控制、支持无头/有头模式、自动重连。
通过 WebSocket 控制真实浏览器,实现导航、点击、输入、截图、DOM 获取等自动化操作。
bash
# 1. 安装依赖
npm install
# 2. 启动服务
npm start
# 服务将运行在 ws://localhost:18790
连接到 ws://localhost:18790
发送 JSON:
json
{
"id": "请求 ID (可选)",
"action": "动作名称",
"params": { ... }
}
动作参数说明navigate``{ url: "https://..." }导航到指定 URLsnapshot``{}获取当前页面简化 DOM 结构screenshot``{ fullPage: false }截图 (返回 base64)click``{ selector: "button" }点击元素type``{ selector: "input", text: "hello", delay: 50 }输入文本evaluate``{ script: "document.title" }执行 JS 脚本status``{}获取浏览器状态
json
{
"id": "请求 ID",
"success": true,
"result": { ... }
}
python
import websocket
import json
ws = websocket.create_connection("ws://localhost:18790")
# 导航
ws.send(json.dumps({"action": "navigate", "params": {"url": "https://fanqie.baidu.com"}}))
print(ws.recv())
# 截图
ws.send(json.dumps({"action": "screenshot", "params": {}}))
resp = json.loads(ws.recv())
with open("screen.png", "wb") as f:
f.write(base64.b64decode(resp["result"]["image"]))
ws.close()
AI_BROWSER_PORT 环境变量修改false,可以看到浏览器界面(方便调试)