OpenClaw 专题
重点内容浏览器自动化 AI 工具完整指南,从入门到精通。
OpenClaw 简介
什么是 OpenClaw
OpenClaw 是一款基于 AI 的浏览器自动化工具,它可以理解自然语言指令, 自动完成网页操作任务。与传统的自动化脚本不同,OpenClaw 具有视觉理解能力,可以像人一样"看懂"网页并做出智能决策。
核心能力
🖱️
网页操控
点击、输入、滚动、拖拽等交互操作
📝
表单填写
智能识别表单字段,自动填充数据
📊
数据抓取
提取网页内容,结构化输出数据
📸
截图分析
视觉理解网页内容,智能决策
与 Claude Code 的区别
| 特性 | OpenClaw | Claude Code |
|---|---|---|
| 主要用途 | 浏览器自动化、网页操作 | 代码生成、编程辅助 |
| 运行环境 | 浏览器内 | 命令行终端 |
| 输入方式 | 自然语言 + 网页上下文 | 自然语言 + 代码文件 |
| 适用场景 | 数据采集、表单自动化、测试 | 代码开发、重构、调试 |
快速接入
3 步完成 OpenClaw 接入配置。
1 安装 OpenClaw
Terminal
# 使用 npm 全局安装 npm install -g openclaw # 或使用 npx 直接运行(无需安装) npx openclaw
2 配置 Bee Agents 中转
创建或编辑配置文件:
~/.openclaw/config.json
{
"apiProvider": "anthropic",
"apiBaseUrl": "https://api.beeagents.org",
"apiKey": "sk-你的OpenClaw分组令牌",
"model": "claude-3-5-sonnet-20241022",
"headless": false,
"timeout": 30000
}
重要:请确保令牌分组为
openclaw,其他分组的令牌无法使用。
3 验证连接
Terminal
# 运行测试命令 openclaw test # 或执行简单任务 openclaw "打开百度首页并搜索 Bee Agents"
预期结果:浏览器窗口自动打开,执行指定操作。如果看到正常的浏览器行为,说明配置成功。
高级使用技巧
浏览器自动化脚本编写
OpenClaw 支持将自然语言指令编写为可复用的脚本文件:
tasks/login-github.yaml
name: "GitHub 登录"
description: "自动登录 GitHub 账号"
steps:
- action: navigate
url: "https://github.com/login"
- action: type
selector: "#login_field"
text: "${USERNAME}"
- action: type
selector: "#password"
text: "${PASSWORD}"
- action: click
selector: "input[type='submit']"
- action: wait
condition: "url contains 'github.com'"
timeout: 10000
运行脚本:openclaw run tasks/login-github.yaml
数据抓取最佳实践
- 使用结构化输出:指定 JSON/CSV 格式,便于后续处理
- 添加等待策略:确保页面完全加载后再抓取
- 分页处理:使用循环自动翻页抓取所有数据
- 错误重试:网络波动时自动重试请求
示例
openclaw "打开豆瓣电影 Top250,抓取所有电影的名称、评分、导演,输出为 JSON 格式"
多页面工作流
OpenClaw 可以在多个标签页之间切换,执行复杂的跨页面任务:
示例指令
1. 在第一个标签页打开 Google Sheets 2. 新建一个标签页打开数据源网站 3. 从数据源抓取表格数据 4. 切换回 Google Sheets,粘贴数据 5. 保存并分享文档
与 Claude Code 联动
结合 Claude Code 和 OpenClaw,可以实现更强大的自动化工作流:
- Claude Code 分析需求,生成 OpenClaw 脚本
- OpenClaw 执行浏览器任务,收集数据
- Claude Code 处理收集的数据,生成报告
- OpenClaw 将报告上传到指定位置
案例展示
案例 1:自动填写表单
场景:批量填写问卷调查
命令
openclaw "打开问卷星链接 xxx,根据以下规则填写: - 姓名:张三 - 年龄:选择 25-30 - 职业:选择 IT/互联网 - 满意度:选择 非常满意 提交表单后截图保存"
案例 2:批量数据采集
场景:采集竞品价格信息
命令
openclaw "打开京东,搜索 iPhone 15,抓取前 20 个商品的: - 商品名称 - 价格 - 店铺名称 - 评价数量 输出为 CSV 文件保存到 ~/Desktop/jd-iphone15.csv"
案例 3:网页截图自动化
场景:定时截取竞品官网变化
screenshot-task.yaml
name: "竞品官网截图"
urls:
- "https://competitor-a.com"
- "https://competitor-b.com"
- "https://competitor-c.com"
actions:
- wait: 3000 # 等待页面加载
- screenshot:
fullPage: true
output: "screenshots/${domain}_${date}.png"故障排查
常见错误代码
| 错误码 | 含义 | 解决方案 |
|---|---|---|
AUTH_FAILED |
认证失败 | 检查 API Key 是否正确,确保使用 openclaw 分组令牌 |
TIMEOUT |
请求超时 | 增加 timeout 配置值,检查网络连接 |
ELEMENT_NOT_FOUND |
元素未找到 | 页面可能未完全加载,添加等待时间 |
NAVIGATION_FAILED |
页面导航失败 | 检查 URL 是否正确,目标网站是否可访问 |
RATE_LIMITED |
请求频率限制 | 降低请求频率,添加延迟 |
连接问题诊断
诊断命令
# 测试 API 连接 openclaw diagnose # 检查配置文件 openclaw config --show # 启用调试模式 openclaw --debug "你的指令"
性能优化建议
- 启用 headless 模式:无需显示浏览器界面时,设置
headless: true可提升速度 - 复用浏览器实例:批量任务时保持浏览器打开,避免重复启动开销
- 优化等待策略:使用元素可见性检测替代固定延时
- 缓存登录状态:保存 cookies,避免重复登录