如何用OpenClaw实现自动化操作浏览器?
摘要:浏览器自动化一般主要靠代码框架、零代码工具和 AI 辅助工具实现,常用于功能测试、回归测试和跨浏览器兼容性测试。 常见的代码框架类工具: Playwright:微软开发,速度快,自动等待机制强,支持 Python、JS、Java、.NET,
浏览器自动化一般主要靠代码框架、零代码工具和 AI 辅助工具实现,常用于功能测试、回归测试和跨浏览器兼容性测试。
常见的代码框架类工具:
Playwright:微软开发,速度快,自动等待机制强,支持 Python、JS、Java、.NET,适合复杂的跨浏览器测试。
Puppeteer:Google 开发,专为 Chrome/Chromium 设计,适合前端开发者。
Selenium:老牌工具,生态成熟,支持几乎所有浏览器和主流编程语言。
在 AI Agent 时代,浏览器自动化已成为必备技能,而上述传统的 Puppeteer/Playwright/Selenium 框架存在以下痛点:
❌ 需要编写大量代码
❌ 难以与 AI Agent 集成
❌ 缺少统一的管理界面
❌ 远程调试配置复杂
OpenClaw 的出现改变了这一切,它是一个自托管的 AI Agent 网关,内置了强大的浏览器控制能力,可以通过 CDP 协议实现了:
✅ CLI + AI Agent 双模式控制
✅ 开箱即用的浏览器管理
✅ 支持远程 CDP 连接
这一篇我们来介绍 一下,OpenClaw 如何通过浏览器自动化操作网站。
一、OpenClaw连接CDP架构
1、OpenClaw
OpenClaw 是一个多通道 AI Agent 网关,提供:
🦞 独立浏览器配置文件(隔离于个人浏览器)
🔌 Chrome 扩展接力(控制现有 Chrome 标签)
🌐 远程 CDP 支持(连接云端浏览器)
📊 Web 控制面板(可视化管理)
2、CDP(Chrome DevTools Protocol)
CDP 是 Chrome 浏览器的调试协议,允许开发者通过编程方式:
控制页面导航、点击、输入
捕获网络请求和响应
执行 JavaScript
截图和生成 PDF
所有现代浏览器自动化工具(Puppeteer、Playwright)都基于 CDP 构建。
3、CDP 连接架构
┌─────────────┐
│ AI Agent │
│ (OpenClaw) │
└──────┬──────┘
│ HTTP API
▼
┌─────────────────┐
│ Browser Control │
│ Service │
└────────┬────────┘
│ CDP Protocol
▼
┌─────────────────┐
│ Chromium │
│ (CDP Port) │
└─────────────────┘
架构分三部分:
浏览器控制服务:运行在 OpenClaw Gateway 或节点上的 API
Chrome MV3 插件:用 chrome.debugger API 附加到标签页,把 CDP 消息传给本地中继
本地中继服务器:在控制服务器和插件之间搭桥,默认端口 127.0.0.1:18792
二、环境准备
如果你是新手,想学习OpenClaw完整安装配置方法及如何接入飞书,可以查阅上一篇文章:为什么我拖了一个多月才开始使用OpenClaw?(附接入飞书完整详细教程,新手必看)
这里主要以浏览器自动化为主,简化一下步骤,主要分两步
1、安装 OpenClaw
# 全局安装(需要 Node.js 22+)
npm install -g openclaw@latest
# 验证安装
openclaw --version
# 输出:2026.3.2(或更新版本)
2、初始化配置
# 交互式配置向导
openclaw onboard --install-daemon
# 启动 Gateway(网关服务)
openclaw gateway --port 18789
三、快速上手
目前 OpenClaw 提供了两种浏览器模式:
第一种是 OpenClaw 自带的托管浏览器。
第二种是 Chrome 扩展中继。
说白了,就是:让 AI 直接用我的 Chrome,带着我所有的登录状态,稳定地、像我本人一样去操作网页。
这类需求其实有一个更底层、更可靠的解决方案:通过 Chrome 的远程调试协议(CDP)直接连接。
1、浏览器(OpenClaw 托管)
它会启动一个全新的 Chromium 实例,有自己独立的用户数据目录。但问题很明显:这是一台"全新的电脑",什么登录状态都没有。你想让 AI 帮你操作后台管理页面?不好意思,先登录。碰到二次验证、短信验证码的?那基本没戏。而且这个浏览器的连接稳定性也一般,时不时会断。
