欢迎光临
我们一直在努力

13-OpenClaw浏览器自动化实战

OpenClaw 浏览器自动化实战

免费专栏全套教程:OpenClaw从入门到精通

让 AI 替你操作浏览器,解放双手,效率翻倍!本教程深入讲解 OpenClaw 浏览器自动化功能,从入门到精通。


📖 目录

  • 功能概述
  • 环境配置
  • 浏览器控制
  • 页面操作
  • 数据采集
  • 自动化测试
  • 定时任务
  • 实战案例
  • 故障排除

  • 1. 功能概述

    什么是浏览器自动化?

    浏览器自动化是指通过程序控制浏览器自动执行操作,如打开网页、点击按钮、填写表单、提取数据等。OpenClaw 的浏览器自动化功能让 AI 直接操作你的浏览器,完成各种重复性任务。

    核心能力

    ┌─────────────────────────────────────────────────────────────────┐
    │ OpenClaw 浏览器自动化架构 │
    ├─────────────────────────────────────────────────────────────────┤
    │ │
    │ ┌─────────┐ ┌─────────────┐ ┌─────────────────────┐ │
    │ │ 用户 │───▶│ OpenClaw │───▶│ Browser Relay 扩展 │ │
    │ │ 指令 │ │ Agent │ │ (Chrome 插件) │ │
    │ └─────────┘ └─────────────┘ └─────────────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌─────────────────┐ │
    │ │ Chrome 浏览器 │ │
    │ │ (你的浏览器) │ │
    │ └─────────────────┘ │
    │ │
    │ 功能支持: │
    │ ✅ 页面导航 (打开/刷新/后退/前进) │
    │ ✅ 元素交互 (点击/输入/选择/拖拽) │
    │ ✅ 页面快照 (截图/结构化数据提取) │
    │ ✅ 多标签页管理 │
    │ ✅ 文件上传/下载 │
    │ ✅ 弹窗处理 (alert/confirm/prompt) │
    │ │
    └─────────────────────────────────────────────────────────────────┘

    与传统自动化工具对比

    特性OpenClawSeleniumPuppeteerPlaywright
    自然语言控制
    需要编程知识
    使用现有浏览器
    AI 智能定位元素
    配置复杂度
    学习曲线 平缓 陡峭 中等 中等

    2. 环境配置

    2.1 安装 Browser Relay 扩展

    OpenClaw 通过 Browser Relay 扩展控制你的 Chrome 浏览器。

    # 步骤 1: 确认 Gateway 服务运行
    openclaw gateway status

    # 步骤 2: 如果未运行,启动服务
    openclaw gateway start

    # 步骤 3: 在 Chrome 中安装扩展
    # 访问 Chrome Web Store 搜索 "OpenClaw Browser Relay"
    # 或直接访问: chrome://extensions/ 开启开发者模式加载扩展

    2.2 连接浏览器

    用户:打开浏览器连接到小红书

    OpenClaw:正在启动浏览器并连接…
    ✅ 浏览器已连接
    ✅ 已打开 https://www.xiaohongshu.com

    2.3 验证配置

    # 检查 Gateway 状态
    openclaw gateway status
    # 输出: Running on port 9527

    # 测试浏览器连接
    openclaw browser status
    # 输出: Connected, 1 tab active

    配置流程图

    ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
    │ 安装 OpenClaw │────▶│ 启动 Gateway │────▶│ 安装 Browser │
    │ CLI 工具 │ │ 服务 │ │ Relay 扩展 │
    └──────────────────┘ └──────────────────┘ └──────────────────┘


    ┌──────────────────────────────────────────┐
    │ 配置完成 ✅ │
    │ 可以开始浏览器自动化操作 │
    └──────────────────────────────────────────┘


    3. 浏览器控制

    3.1 基础导航操作

    打开网页

    用户:打开百度

    OpenClaw:正在打开百度…
    ✅ 已打开 https://www.baidu.com

    导航控制

    用户:刷新页面
    用户:后退
    用户:前进
    用户:打开新标签页
    用户:关闭当前标签页

    3.2 浏览器工具详解

    OpenClaw 的 browser 工具提供完整的浏览器控制能力:

    // browser 工具支持的 action
    {
    "action": "status|start|stop|profiles|tabs|open|focus|close|snapshot|screenshot|navigate|console|pdf|upload|dialog|act"
    }

    常用操作示例

    查看浏览器状态

    browser action="status"

    获取所有标签页

    browser action="tabs"

    打开新页面

    browser action="open" targetUrl="https://example.com"

    页面截图

    browser action="screenshot" type="png" fullPage=true

    获取页面快照(结构化数据)

    browser action="snapshot" refs="aria"

    3.3 Profile 管理

    OpenClaw 支持两种浏览器 Profile:

    Profile用途特点
    chrome 使用你的 Chrome 浏览器 保留登录状态、书签、历史
    openclaw 独立的浏览器实例 隔离环境、干净状态

    用户:用我的 Chrome 打开小红书

    OpenClaw:使用 Chrome profile 打开…
    ✅ 已打开 https://www.xiaohongshu.com
    ✅ 使用你的登录状态

    浏览器控制流程图

    ┌─────────────────────────────────────────────────────────────────────┐
    │ 浏览器控制操作流程 │
    ├─────────────────────────────────────────────────────────────────────┤
    │ │
    │ 开始 │
    │ │ │
    │ ▼ │
    │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
    │ │ 检查状态 │───▶│ 选择Profile │───▶│ 执行操作 │ │
    │ │ (status) │ │ (chrome/ │ │ (open/ │ │
    │ │ │ │ openclaw) │ │ navigate) │ │
    │ └─────────────┘ └─────────────┘ └─────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌─────────────────┐ │
    │ │ 获取快照/截图 │ │
    │ │ (snapshot/ │ │
    │ │ screenshot) │ │
    │ └─────────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌─────────────────┐ │
    │ │ 完成 │ │
    │ └─────────────────┘ │
    │ │
    └─────────────────────────────────────────────────────────────────────┘


    4. 页面操作

    4.1 元素定位与交互

    OpenClaw 使用智能元素定位,支持多种定位方式:

    Aria Ref 定位(推荐)

    // 获取页面快照,包含 aria refs
    browser action="snapshot" refs="aria"

    // 返回示例:
    // – e12: "搜索框"
    // – e15: "搜索按钮"
    // – e23: "登录链接"

    点击操作

    用户:点击搜索按钮

    OpenClaw:正在定位元素…
    ✅ 找到元素: e15 (搜索按钮)
    ✅ 已点击

    // 底层调用
    browser action="act" request={"kind": "click", "ref": "e15"}

    输入操作

    用户:在搜索框输入"OpenClaw 教程"

    OpenClaw:正在输入…
    ✅ 已在搜索框输入文本

    browser action="act" request={"kind": "type", "ref": "e12", "text": "OpenClaw 教程"}

    键盘操作

    // 按下回车键
    browser action="act" request={"kind": "press", "key": "Enter"}

    // 组合键 (Ctrl+C)
    browser action="act" request={"kind": "press", "key": "c", "modifiers": ["Control"]}

    选择操作

    // 下拉选择
    browser action="act" request={"kind": "select", "ref": "e20", "values": ["option1"]}

    4.2 表单自动填写

    完整表单填写示例

    用户:帮我在这个注册页面填写信息:用户名 testuser,邮箱 test@example.com,密码 Test123456

    OpenClaw:正在分析页面结构…
    ✅ 找到用户名输入框 (e5)
    ✅ 找到邮箱输入框 (e8)
    ✅ 找到密码输入框 (e11)
    ✅ 找到确认密码输入框 (e14)
    ✅ 已填写所有字段

    4.3 复杂交互场景

    拖拽操作

    browser action="act" request={
    "kind": "drag",
    "startRef": "e10",
    "endRef": "e25"
    }

    悬停操作

    browser action="act" request={"kind": "hover", "ref": "e18"}

    等待元素

    // 等待特定文本出现
    browser action="act" request={"kind": "wait", "textGone": "加载中…"}

    页面操作决策流程

    ┌────────────────────────────────────────────────────────────────┐
    │ 页面操作决策流程 │
    ├────────────────────────────────────────────────────────────────┤
    │ │
    │ 开始 │
    │ │ │
    │ ▼ │
    │ ┌─────────────┐ │
    │ │ 获取快照 │ │
    │ │ snapshot │ │
    │ └─────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌─────────────┐ ┌─────────────┐ │
    │ │ 找到目标? │──否──▶│ 等待/滚动 │──┐ │
    │ └─────────────┘ └─────────────┘ │ │
    │ │是 │ │
    │ ▼ │ │
    │ ┌─────────────┐ │ │
    │ │ 执行操作 │◀─────────────────────┘ │
    │ │ click/type │ │
    │ └─────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌─────────────┐ ┌─────────────┐ │
    │ │ 操作成功? │──否──▶│ 重试/报错 │ │
    │ └─────────────┘ └─────────────┘ │
    │ │是 │
    │ ▼ │
    │ ┌─────────────┐ │
    │ │ 获取新快照 │ │
    │ │ 验证结果 │ │
    │ └─────────────┘ │
    │ │ │
    │ ▼ │
    │ 完成 │
    │ │
    └────────────────────────────────────────────────────────────────┘


    5. 数据采集

    5.1 页面快照提取

    OpenClaw 提供两种快照模式:

    Role 模式(默认)

    browser action="snapshot" refs="role"

    // 返回基于角色和名称的元素引用
    // 如: button "搜索", textbox "用户名"

    Aria 模式(推荐用于交互)

    browser action="snapshot" refs="aria"

    // 返回 aria-ref IDs
    // 如: e12, e15, e23
    // 更稳定,适合后续操作引用

    5.2 结构化数据提取

    提取页面内容

    用户:提取这个商品页面的所有商品信息

    OpenClaw:正在分析页面结构…
    ✅ 提取到 20 个商品

    商品列表:
    | 名称 | 价格 | 销量 |
    |——|——|——|
    | 商品A | ¥99 | 1000+ |
    | 商品B | ¥199 | 500+ |
    | … | … | … |

    提取表格数据

    用户:把这个表格的数据提取出来

    OpenClaw:提取表格数据…

    // 返回结构化 JSON
    {
    "headers": ["姓名", "部门", "工资"],
    "rows": [
    ["张三", "技术部", "15000"],
    ["李四", "销售部", "12000"],
    ["王五", "财务部", "13000"]
    ]
    }

    5.3 多页数据采集

    分页采集流程

    ┌────────────────────────────────────────────────────────────────┐
    │ 分页数据采集流程 │
    ├────────────────────────────────────────────────────────────────┤
    │ │
    │ ┌──────────┐ │
    │ │ 初始化 │ results = [] │
    │ │ page = 1 │ │
    │ └──────────┘ │
    │ │ │
    │ ▼ │
    │ ┌──────────────────┐ │
    │ │ 获取当前页数据 │ │
    │ │ snapshot + 提取 │ │
    │ └──────────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌──────────────────┐ │
    │ │ 添加到结果集 │ results.push(data) │
    │ └──────────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌──────────────────┐ ┌──────────────┐ │
    │ │ 有下一页? │──是──▶│ 点击下一页 │ │
    │ └──────────────────┘ │ page++ │ │
    │ │否 └──────────────┘ │
    │ ▼ │ │
    │ ┌──────────────────┐ │ │
    │ │ 返回结果 │◀───────────┘ │
    │ │ 保存到文件 │ │
    │ └──────────────────┘ │
    │ │
    └────────────────────────────────────────────────────────────────┘

    5.4 数据采集实战示例

    采集小红书热门笔记

    # 自动化采集脚本示例逻辑
    # 1. 打开小红书
    # 2. 搜索关键词
    # 3. 滚动加载更多
    # 4. 提取每篇笔记信息
    # 5. 翻页继续
    # 6. 保存数据

    用户:帮我采集小红书上"AI 工具"相关的前 50 篇热门笔记

    OpenClaw:开始采集任务…
    ✅ 打开小红书
    ✅ 搜索"AI 工具"
    ✅ 第 1 页:提取 20 条数据
    ✅ 第 2 页:提取 20 条数据
    ✅ 第 3 页:提取 10 条数据
    ✅ 共采集 50 条数据

    已保存到: xiaohongshu_ai_tools_20260226.json


    6. 自动化测试

    6.1 测试用例编写

    OpenClaw 支持自然语言描述测试用例:

    用户:测试登录功能,用户名 admin,密码 admin123

    OpenClaw:开始执行登录测试…
    步骤 1: 打开登录页面 ✅
    步骤 2: 输入用户名 ✅
    步骤 3: 输入密码 ✅
    步骤 4: 点击登录按钮 ✅
    步骤 5: 验证登录成功 ✅

    测试结果: 通过 ✅
    耗时: 3.2 秒

    6.2 断言验证

    元素状态断言

    // 验证元素可见
    {"kind": "wait", "ref": "e15"} // 等待元素出现

    // 验证文本内容
    {"kind": "wait", "textGone": "加载中…"} // 等待文本消失

    页面状态断言

    用户:验证页面是否跳转到首页

    OpenClaw:检查页面状态…
    ✅ URL 匹配: https://example.com/home
    ✅ 标题包含: "首页"
    ✅ 关键元素存在: 导航栏、搜索框
    验证通过 ✅

    6.3 测试套件

    完整测试流程示例

    ┌────────────────────────────────────────────────────────────────┐
    │ 自动化测试执行流程 │
    ├────────────────────────────────────────────────────────────────┤
    │ │
    │ 测试套件: 电商购物流程 │
    │ │
    │ ┌──────────────────────────────────────────────────────┐ │
    │ │ 测试用例 1: 用户登录 │ │
    │ │ ├─ 打开登录页面 ✅ 通过 (0.5s) │ │
    │ │ ├─ 输入用户名 ✅ 通过 (0.2s) │ │
    │ │ ├─ 输入密码 ✅ 通过 (0.2s) │ │
    │ │ ├─ 点击登录 ✅ 通过 (0.3s) │ │
    │ │ └─ 验证登录成功 ✅ 通过 (1.0s) │
    │ │ 总计: 2.2s │ │
    │ └──────────────────────────────────────────────────────┘ │
    │ │
    │ ┌──────────────────────────────────────────────────────┐ │
    │ │ 测试用例 2: 商品搜索 │ │
    │ │ ├─ 输入搜索关键词 ✅ 通过 (0.3s) │ │
    │ │ ├─ 点击搜索 ✅ 通过 (0.2s) │ │
    │ │ └─ 验证搜索结果 ✅ 通过 (1.5s) │
    │ │ 总计: 2.0s │ │
    │ └──────────────────────────────────────────────────────┘ │
    │ │
    │ ┌──────────────────────────────────────────────────────┐ │
    │ │ 测试用例 3: 添加购物车 │ │
    │ │ ├─ 选择商品 ✅ 通过 (0.5s) │ │
    │ │ ├─ 点击加入购物车 ✅ 通过 (0.3s) │ │
    │ │ └─ 验证购物车数量 ✅ 通过 (0.5s) │
    │ │ 总计: 1.3s │ │
    │ └──────────────────────────────────────────────────────┘ │
    │ │
    │ ══════════════════════════════════════════════════════════ │
    │ 测试结果: 全部通过 ✅ (3/3) │
    │ 总耗时: 5.5s │
    │ ══════════════════════════════════════════════════════════ │
    │ │
    └────────────────────────────────────────────────────────────────┘

    6.4 错误处理与重试

    用户:如果登录失败,重试 3 次

    OpenClaw:执行登录测试…
    尝试 1: 失败 – 元素未找到
    尝试 2: 失败 – 网络超时
    尝试 3: 成功 ✅

    测试结果: 通过 (重试 2 次)


    7. 定时任务

    7.1 使用 Cron 创建定时任务

    OpenClaw 支持通过 cron 创建定时执行的任务:

    # 创建定时任务
    openclaw cron add "0 9 * * *" "帮我查今天天气并发送摘要"

    # 每天早上 9 点执行天气查询

    # 查看所有定时任务
    openclaw cron list

    # 删除定时任务
    openclaw cron remove <task_id>

    7.2 定时自动化场景

    场景 1: 定时数据采集

    # 每天凌晨 2 点采集竞品价格
    openclaw cron add "0 2 * * *" "采集某电商平台的商品价格并保存"

    # 每小时采集一次股票数据
    openclaw cron add "0 * * * *" "获取指定股票实时价格"

    场景 2: 定时发布内容

    # 每天晚上 8 点发布小红书笔记
    openclaw cron add "0 20 * * *" "发布一篇小红书笔记"

    # 每周一早上发送周报
    openclaw cron add "0 9 * * 1" "生成本周周报并发送"

    场景 3: 定时监控检查

    # 每 5 分钟检查网站是否正常
    openclaw cron add "*/5 * * * *" "检查网站状态,异常时通知"

    # 每天早上 8 点检查邮件并发送摘要
    openclaw cron add "0 8 * * *" "检查新邮件并发送摘要"

    7.3 定时任务管理流程

    ┌────────────────────────────────────────────────────────────────┐
    │ 定时任务管理流程 │
    ├────────────────────────────────────────────────────────────────┤
    │ │
    │ 创建任务 │
    │ ┌──────────────────────────────────────────────────┐ │
    │ │ openclaw cron add "schedule" "task description" │ │
    │ └──────────────────────────────────────────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌──────────────────────────────────────────────────┐ │
    │ │ 任务调度器 │ │
    │ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
    │ │ │ 任务1 │ │ 任务2 │ │ 任务3 │ │ 任务N │ │ │
    │ │ │ 9:00 │ │ 12:00 │ │ 20:00 │ │ … │ │ │
    │ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │
    │ └──────────────────────────────────────────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌──────────────────────────────────────────────────┐ │
    │ │ 执行引擎 │ │
    │ │ ┌────────────────────────────────────────────┐ │ │
    │ │ │ 1. 创建新的 subagent │ │ │
    │ │ │ 2. 执行任务 │ │ │
    │ │ │ 3. 记录结果 │ │ │
    │ │ │ 4. 发送通知(如需要) │ │ │
    │ │ └────────────────────────────────────────────┘ │ │
    │ └──────────────────────────────────────────────────┘ │
    │ │ │
    │ ▼ │
    │ ┌──────────────────────────────────────────────────┐ │
    │ │ 结果记录 │ │
    │ │ ✅ 成功: 保存日志 │ │
    │ │ ❌ 失败: 记录错误 + 可选重试 │ │
    │ └──────────────────────────────────────────────────┘ │
    │ │
    └────────────────────────────────────────────────────────────────┘

    7.4 Heartbeat 模式

    除了精确时间的 cron,OpenClaw 还支持 Heartbeat 模式:

    # 在 HEARTBEAT.md 中配置检查项
    # 每次心跳时执行

    # 示例 HEARTBEAT.md 内容:
    – 检查是否有新邮件
    – 检查日程安排
    – 检查天气预警

    Heartbeat vs Cron 对比
    特性HeartbeatCron
    精确时间 ❌ 不精确 ✅ 精确
    执行频率 ~30 分钟一次 任意 cron 表达式
    上下文 有会话上下文 独立执行
    适用场景 周期性检查 定时任务
    批量操作 ✅ 可批量检查 ❌ 单一任务

    8. 实战案例

    8.1 小红书自动发布

    完整的小红书笔记自动发布流程,包含 13 个标准步骤:

    ┌────────────────────────────────────────────────────────────────┐
    │ 小红书 13 步发布流程 │
    ├────────────────────────────────────────────────────────────────┤
    │ │
    │ 阶段一:准备 (步骤 1-4) │
    │ ┌──────────────────────────────────────────────────────┐ │
    │ │ Step 1: 重新获取页面快照 │ │
    │ │ Step 2: 点击"上传图文"按钮 │ │
    │ │ Step 3: 点击另一个"上传图文"按钮 │ │
    │ │ Step 4: 获取编辑页面快照 │ │
    │ └──────────────────────────────────────────────────────┘ │
    │ │ │
    │ ▼ │
    │ 阶段二:编辑 (步骤 5-10) │
    │ ┌──────────────────────────────────────────────────────┐ │
    │ │ Step 5: 点击"文字配图"按钮 │ │
    │ │ Step 6: 获取编辑页面快照 │ │
    │ │ Step 7: 填写标题 │ │
    │ │ Step 8: 获取新快照 │ │
    │ │ Step 9: 点击生成图片按钮 │ │
    │ │ Step 10: 点击下一步按钮 │ │
    │ └──────────────────────────────────────────────────────┘ │
    │ │ │
    │ ▼ │
    │ 阶段三:发布 (步骤 11-13) │
    │ ┌──────────────────────────────────────────────────────┐ │
    │ │ Step 11: 获取快照,找到编辑位置 │ │
    │ │ Step 12: 填写标题和内容 │ │
    │ │ Step 13: 点击"发布"按钮 │ │
    │ └──────────────────────────────────────────────────────┘ │
    │ │ │
    │ ▼ │
    │ ✅ 发布完成 │
    │ │
    └────────────────────────────────────────────────────────────────┘

    使用示例

    用户:帮我发布一篇小红书笔记,标题"10个AI工具让我准时下班"

    OpenClaw:开始发布流程…
    ✅ Step 1: 获取页面快照
    ✅ Step 2: 点击上传按钮
    ✅ Step 3: 进入上传页面
    ✅ Step 4: 获取编辑页面快照
    ✅ Step 5: 选择文字配图
    ✅ Step 6: 进入编辑模式
    ✅ Step 7: 填写标题
    ✅ Step 8: 确认标题
    ✅ Step 9: 生成封面图
    ✅ Step 10: 进入下一步
    ✅ Step 11: 获取发布页面
    ✅ Step 12: 填写完整内容
    ✅ Step 13: 点击发布

    🎉 笔记发布成功!

    8.2 自动化表单填写

    用户:帮我在这个网站填写注册表单

    OpenClaw:分析页面结构…
    发现以下字段:
    – 用户名 (e5)
    – 邮箱 (e8)
    – 密码 (e11)
    – 确认密码 (e14)
    – 手机号 (e17)
    – 验证码 (e20)

    请提供填写信息:

    用户:用户名 openclaw_user,邮箱 user@example.com,密码 Test@123,手机 13800138000

    OpenClaw:正在填写…
    ✅ 用户名: openclaw_user
    ✅ 邮箱: user@example.com
    ✅ 密码: •••••••
    ✅ 确认密码: •••••••
    ✅ 手机号: 13800138000

    请输入验证码(已发送到手机):

    用户:123456

    OpenClaw:正在填写验证码…
    ✅ 验证码: 123456
    ✅ 点击注册按钮
    ✅ 注册成功!

    正在跳转到首页…

    8.3 数据监控与报警

    用户:监控这个商品的价格,降到 500 以下通知我

    OpenClaw:已创建价格监控任务
    监控周期: 每 4 小时
    当前价格: ¥699
    目标价格: ¥500

    我会持续监控,价格达标时立即通知你!

    监控流程

    ┌────────────────────────────────────────────────────────────────┐
    │ 价格监控流程 │
    ├────────────────────────────────────────────────────────────────┤
    │ │
    │ ┌──────────┐ │
    │ │ 创建监控 │ 定时任务: 每 4 小时检查 │
    │ └──────────┘ │
    │ │ │
    │ ▼ │
    │ ┌──────────────────────────────────────────────────┐ │
    │ │ 监控循环 │ │
    │ │ │ │
    │ │ ┌────────┐ ┌────────┐ ┌────────┐ │ │
    │ │ │ 打开 │───▶│ 提取 │───▶│ 比对 │ │ │
    │ │ │ 页面 │ │ 价格 │ │ 目标价 │ │ │
    │ │ └────────┘ └────────┘ └────────┘ │ │
    │ │ │ │ │
    │ │ ┌──────────┴──────┐ │ │
    │ │ │ │ │ │
    │ │ 未达标 达标 │ │
    │ │ │ │ │ │
    │ │ ▼ ▼ │ │
    │ │ ┌─────────┐ ┌────────┐│ │
    │ │ │ 记录日志│ │ 发通知 ││ │
    │ │ │ 继续监控│ │ 降价了!││ │
    │ │ └─────────┘ └────────┘│ │
    │ │ │ │
    │ └──────────────────────────────────────────────────┘ │
    │ │
    └────────────────────────────────────────────────────────────────┘

    8.4 批量操作自动化

    用户:帮我把购物车里这 10 件商品都加入收藏,然后清空购物车

    OpenClaw:开始批量操作…
    ✅ 商品 1: 已收藏
    ✅ 商品 2: 已收藏
    ✅ 商品 3: 已收藏

    ✅ 商品 10: 已收藏

    ✅ 已收藏全部商品
    ✅ 点击清空购物车
    ✅ 确认清空

    完成!已收藏 10 件商品,购物车已清空


    9. 故障排除

    9.1 常见问题

    问题 1: 浏览器无法连接

    症状:

    ❌ 无法连接到浏览器
    ❌ Browser Relay 未响应

    解决方案:

    # 检查 Gateway 状态
    openclaw gateway status

    # 重启 Gateway
    openclaw gateway restart

    # 检查 Chrome 扩展是否启用
    # 访问 chrome://extensions/ 确认 Browser Relay 已启用

    问题 2: 元素未找到

    症状:

    ❌ 找不到元素 e123
    ❌ 元素定位失败

    解决方案:

    # 1. 重新获取页面快照
    用户:重新获取页面快照

    # 2. 检查页面是否完全加载
    用户:等待 3 秒后再试

    # 3. 检查是否需要滚动页面
    用户:滚动到页面底部

    问题 3: 操作超时

    症状:

    ❌ 操作超时
    ❌ 页面加载超时

    解决方案:

    // 增加超时时间
    browser action="act" request={"kind": "click", "ref": "e15"} timeoutMs=30000

    // 或使用等待操作
    browser action="act" request={"kind": "wait", "textGone": "加载中…"}

    问题 4: 登录状态丢失

    症状:

    ❌ 需要重新登录
    ❌ 会话已过期

    解决方案:

    # 使用 chrome profile 保留登录状态
    用户:用我的 Chrome 浏览器打开

    # 而不是使用独立的 openclaw profile

    9.2 调试技巧

    获取页面截图

    用户:截个图看看当前页面状态

    OpenClaw:[截图]

    browser action="screenshot" fullPage=true

    查看页面结构

    用户:显示当前页面的元素结构

    OpenClaw:页面元素:
    – e1: 导航栏
    – e2: 搜索框
    – e3: 搜索按钮

    查看控制台日志

    browser action="console" level="all"

    9.3 最佳实践

    ┌────────────────────────────────────────────────────────────────┐
    │ 浏览器自动化最佳实践 │
    ├────────────────────────────────────────────────────────────────┤
    │ │
    │ 1. 使用稳定的元素定位 │
    │ ✅ 优先使用 aria-ref (e1, e2, e3…) │
    │ ✅ 结合元素文本内容定位 │
    │ ❌ 避免依赖容易变化的 class 或 id │
    │ │
    │ 2. 添加适当的等待 │
    │ ✅ 页面加载后等待 1-2 秒 │
    │ ✅ 操作后验证结果 │
    │ ❌ 不要假设页面立即加载完成 │
    │ │
    │ 3. 处理异常情况 │
    │ ✅ 设置合理的重试次数 │
    │ ✅ 记录失败日志 │
    │ ✅ 提供有意义的错误信息 │
    │ │
    │ 4. 使用合适的 Profile │
    │ ✅ 需要登录状态 → chrome profile │
    │ ✅ 需要干净环境 → openclaw profile │
    │ │
    │ 5. 资源管理 │
    │ ✅ 完成后关闭不需要的标签页 │
    │ ✅ 避免打开过多页面 │
    │ ✅ 定期清理缓存和 Cookie │
    │ │
    │ 6. 遵守网站规则 │
    │ ✅ 添加合理的请求间隔 │
    │ ✅ 尊重 robots.txt │
    │ ✅ 避免给服务器造成压力 │
    │ │
    └────────────────────────────────────────────────────────────────┘


    📊 总结

    OpenClaw 浏览器自动化能力矩阵

    能力描述难度推荐场景
    页面导航 打开/刷新/后退/前进 所有场景
    元素交互 点击/输入/选择/拖拽 ⭐⭐ 表单填写、按钮操作
    页面快照 截图/结构化数据 数据采集、状态验证
    数据采集 表格/列表提取 ⭐⭐ 批量数据获取
    自动化测试 测试用例执行 ⭐⭐⭐ 回归测试、功能验证
    定时任务 Cron/Heartbeat ⭐⭐ 周期性任务

    快速开始清单

    • 安装 OpenClaw CLI
    • 启动 Gateway 服务
    • 安装 Browser Relay 扩展
    • 测试浏览器连接
    • 尝试第一个自动化任务


    💡 提示: 更多使用案例请参考其他文档或访问 OpenClaw 官方文档

    赞(0)
    未经允许不得转载:171主机测评 » 13-OpenClaw浏览器自动化实战
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址