目 录CONTENT

文章目录

OpenClaw 浏览器自动化完全指南:从托管模式到真实 Chrome 接管

OpenClaw 浏览器自动化完全指南

导读:OpenClaw 最新重磅更新带来了浏览器自动化终极方案。本文详解托管浏览器模式、真实 Chrome 接管、配置文件切换、工作流打包 Skill 等核心功能,助你实现 AI 智能体的浏览器自动化操作。


一、OpenClaw 浏览器自动化概述

OpenClaw 提供强大的浏览器自动化能力,让 AI 助手能够像人类一样浏览网页、填写表单、抓取数据。

1.1 两种核心模式

模式 特点 适用场景
openclaw 托管 隔离浏览器,独立用户数据 安全自动化,账号隔离
chrome 扩展中继 接管真实 Chrome,保留登录状态 需要登录态的自动化

1.2 核心能力

  • 网页浏览 - 访问任意网页并获取内容
  • 页面交互 - 点击、输入、滚动、选择
  • 截图保存 - 页面状态截图、PDF 导出
  • 数据提取 - 动态内容抓取、表单填写
  • 多标签管理 - 列出/打开/聚焦/关闭标签

二、托管浏览器模式(openclaw)

2.1 模式特点

openclaw 是 OpenClaw 默认的隔离浏览器模式:

  • 🛡️ 完全隔离 - 独立用户数据目录,不触及个人浏览器
  • 🔒 安全可控 - 确定性标签页控制,通过 targetId 定位
  • 🎨 视觉区分 - 橙色主题界面,一眼识别托管浏览器
  • 🚀 即开即用 - 无需安装扩展,Gateway 自动管理

2.2 快速开始

# 检查浏览器状态
openclaw browser --browser-profile openclaw status

# 启动浏览器
openclaw browser --browser-profile openclaw start

# 打开网页
openclaw browser --browser-profile openclaw open https://example.com

# 获取页面快照
openclaw browser --browser-profile openclaw snapshot

2.3 配置文件详解

编辑 ~/.openclaw/openclaw.json

{
  "browser": {
    "enabled": true,
    "defaultProfile": "openclaw",
    "color": "#FF4500",
    "headless": false,
    "noSandbox": false,
    "profiles": {
      "openclaw": {
        "cdpPort": 18800,
        "color": "#FF4500"
      }
    }
  }
}

关键配置项

配置项 说明 默认值
enabled 启用浏览器控制 true
defaultProfile 默认使用的 profile "chrome"
headless 无头模式 false
noSandbox 禁用沙箱(root 用户需要) false
executablePath 浏览器可执行路径 自动检测

三、真实 Chrome 接管模式(user)

3.1 重磅更新:自动接管真实 Chrome

最新版 OpenClaw 支持直接接管本地已安装的 Chrome 浏览器,无需重复登录账号

核心优势: - ✅ 保留所有登录态和 Cookie - ✅ 直接使用已保存的密码 - ✅ 无缝衔接现有浏览习惯 - ✅ 工作流可打包成可复用 Skill

3.2 配置真实 Chrome 模式

最简配置方案

{
  "browser": {
    "enabled": true,
    "defaultProfile": "user"
  }
}

完整配置方案

{
  "browser": {
    "enabled": true,
    "defaultProfile": "user",
    "profiles": {
      "user": {
        "driver": "existing-session",
        "cdpUrl": "http://127.0.0.1:9222",
        "color": "#4285F4"
      }
    }
  }
}

3.3 启用 Chrome Remote Debugging

前置条件:必须启用 Chrome 远程调试

步骤 1:关闭所有 Chrome 进程

# macOS
pkill -f "Google Chrome"

# Windows
taskkill /F /IM chrome.exe

# Linux
killall chrome

步骤 2:带调试参数启动 Chrome

# macOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \
  --remote-debugging-port=9222 \
  --user-data-dir="~/chrome-debug-profile"

# Windows
"C:\Program Files\Google\Chrome\Application\chrome.exe" ^
  --remote-debugging-port=9222 ^
  --user-data-dir="C:\chrome-debug-profile"

# Linux
google-chrome \
  --remote-debugging-port=9222 \
  --user-data-dir="~/chrome-debug-profile"

步骤 3:验证调试端口 浏览器访问:http://localhost:9222/json/list

如果能看到标签页列表,说明配置成功。

3.4 推荐检查顺序

1)运行 Doctor 诊断

openclaw doctor

Doctor 会检查: - Chrome 是否安装在同一台主机 - 版本是否过低 - 是否需要启用 remote debugging - 旧配置迁移提示

2)查看浏览器 profiles

openclaw browser profiles

3)测试真实 Chrome 连接

# 列出标签页
openclaw browser --browser-profile user tabs

# 测试状态
openclaw browser --browser-profile user status

四、配置文件切换详解

4.1 多 Profile 支持

OpenClaw 支持多个命名配置文件,实现不同场景的浏览器隔离:

{
  "browser": {
    "enabled": true,
    "defaultProfile": "openclaw",
    "profiles": {
      "openclaw": {
        "cdpPort": 18800,
        "color": "#FF4500"
      },
      "work": {
        "cdpPort": 18801,
        "color": "#0066CC"
      },
      "user": {
        "driver": "existing-session",
        "cdpUrl": "http://127.0.0.1:9222",
        "color": "#4285F4"
      }
    }
  }
}

4.2 Profile 切换方式

CLI 切换

# 使用指定 profile
openclaw browser --browser-profile work open https://work.example.com

配置默认 Profile

# 设置默认使用 user profile
openclaw config set browser.defaultProfile "user"

聊天中指定

请使用 user profile 打开 https://example.com 并截图

4.3 颜色主题区分

每个 profile 可以设置不同颜色,便于视觉区分: - 🟠 openclaw - 橙色 (#FF4500) - 🔵 work - 蓝色 (#0066CC) - 🔵 user - Chrome 蓝 (#4285F4)


五、工作流打包成 Skill

5.1 什么是 Skill?

Skill 是 OpenClaw 的可复用功能模块,将常用操作封装成可调用单元。

5.2 浏览器自动化 Skill 示例

创建自动登录 Skill

# skills/auto-login.yml
name: auto-login
description: 自动登录指定网站
parameters:
  url:
    type: string
    description: 登录页面 URL
  username:
    type: string
    description: 用户名
  password:
    type: string
    description: 密码

steps:
  - action: browser.open
    url: "{{url}}"
    profile: "user"

  - action: browser.fill
    selector: "input[name='username']"
    value: "{{username}}"

  - action: browser.fill
    selector: "input[name='password']"
    value: "{{password}}"

  - action: browser.click
    selector: "button[type='submit']"

  - action: browser.wait
    duration: 3000

  - action: browser.snapshot

5.3 使用 Skill

# 调用 Skill
openclaw skill run auto-login \
  --param url=https://example.com/login \
  --param username=myuser \
  --param password=mypass

聊天中使用:

使用 auto-login Skill 登录 example.com,用户名 myuser

六、高级配置场景

6.1 无头服务器部署

{
  "browser": {
    "enabled": true,
    "headless": true,
    "noSandbox": true,
    "defaultProfile": "openclaw"
  }
}

注意:root 用户运行必须设置 noSandbox: true

6.2 使用 Brave/Edge 浏览器

{
  "browser": {
    "executablePath": "/Applications/Brave Browser.app/Contents/MacOS/Brave Browser"
  }
}

自动检测顺序:Chrome → Brave → Edge → Chromium → Chrome Canary

6.3 远程 CDP 连接

连接远程浏览器:

{
  "browser": {
    "profiles": {
      "remote": {
        "cdpUrl": "http://10.0.0.42:9222",
        "color": "#00AA00"
      }
    }
  }
}

6.4 Browserless 云服务

{
  "browser": {
    "defaultProfile": "browserless",
    "profiles": {
      "browserless": {
        "cdpUrl": "https://production-sfo.browserless.io?token=YOUR_API_KEY",
        "color": "#00AA00"
      }
    }
  }
}

七、常见问题排查

7.1 "Browser disabled" 错误

解决:在配置中启用浏览器并重启 Gateway

{ "browser": { "enabled": true } }

7.2 Chrome 无法启动

检查清单: - ✅ Chrome 是否已安装 - ✅ 端口是否被占用 - ✅ root 用户是否设置了 noSandbox: true - ✅ 可执行路径是否正确

7.3 真实 Chrome 连接失败

排查步骤: 1. 确认 Chrome 带 --remote-debugging-port=9222 启动 2. 访问 http://localhost:9222/json/list 验证 3. 检查防火墙是否放行端口 4. 确认 profile 配置中的 cdpUrl 正确

7.4 Playwright 未安装

错误Playwright is not available

解决

# 安装 Playwright
npm install -g playwright
npx playwright install chromium

# Docker 环境
docker compose run --rm openclaw-cli \
  node /app/node_modules/playwright-core/cli.js install chromium

八、最佳实践

8.1 安全建议

  • ✅ 浏览器控制仅限 loopback 访问
  • ✅ 使用 Tailscale 保持 Gateway 在私有网络
  • ✅ 远程 CDP 使用 HTTPS + 短期令牌
  • ✅ 避免在配置文件中嵌入长期令牌

8.2 性能优化

  • ✅ 使用 headless: true 节省资源
  • ✅ 及时关闭不需要的标签页
  • ✅ 定期清理浏览器缓存
  • ✅ 合理设置 remoteCdpTimeoutMs

8.3 调试技巧

# 查看浏览器日志
openclaw browser logs

# 开启调试模式
openclaw browser --browser-profile openclaw start --debug

# 检查网络请求
openclaw browser --browser-profile openclaw requests

九、总结

OpenClaw 浏览器自动化提供了从隔离托管到真实 Chrome 接管的全套方案:

场景 推荐模式 关键配置
安全自动化 openclaw defaultProfile: "openclaw"
保留登录态 user driver: "existing-session"
多账号隔离 多 profiles 不同 cdpPort
服务器部署 headless headless: true, noSandbox: true
云服务 Browserless 远程 cdpUrl

核心优势: - ✅ 双模式灵活切换 - ✅ 多 Profile 隔离 - ✅ 工作流 Skill 化 - ✅ 企业级安全控制


项目资源: - 官网:https://openclaw.ai - 文档:https://docs.openclaw.ai/zh-CN/tools/browser - GitHub:https://github.com/openclaw



📚 相关文章推荐

你可能还想看:

  1. 10美元跑AI助手?PicoClaw实测:比OpenClaw轻量99%
  2. 我折腾了3天OpenClaw,总结出这份避坑指南
  3. 我折腾了3天OpenClaw,总结出这份避坑指南
  4. 我折腾了3天OpenClaw,总结出这份避坑指南
  5. OpenClaw 企业微信接入全攻略:从零开始打造智能办公助手

📢 关注「Geek 运维」

了解更多最新 Geek 技术分享!

关注 Geek 运维公众号

长按识别图中二维码,关注「Geek 运维」公众号,获取: - 最新 AI 技术资讯 - 实用技术教程和工具 - OpenClaw/Skills 使用指南 - 运维开发最佳实践 - 第一手技术资源分享


本文基于 OpenClaw 最新版整理

0

评论区