OpenClaw 如何操作浏览器

📅 2026/7/1 10:07:01
OpenClaw 如何操作浏览器
安装完openclaw我们最基本的工作就是能够浏览网页、网络搜索或获取网页内容。 网页搜索可以通过使用内置的web-search工具但由于基本上都需要api key而且搜索适配器Brave → Gemini → Grok → Kimi → Perplexity都是国外网站每个api key获取都需要相应的费用或国外银行卡等。现在我们通过openclaw内置的browser通过playwright相似逻辑完成网页内容的检索获取等工作。一、在openclaw机器上安装浏览器在命令行中运行以下命令直接全部复制多行运行即可 # 1. 更新本地软件包索引确保获取最新的依赖信息 sudo apt update # 2. 下载适用于 Debian/Ubuntu 的 64位安装包 (.deb 格式) wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb # 3. 安装 Google Chrome # apt install 会自动处理并安装缺失的依赖库如 libgbm1, xdg-utils 等 sudo apt install -y ./google-chrome-stable_current_amd64.deb # 4. 安装中文字体防止中文网页显示为方框Tofu sudo apt install -y fonts-noto-cjk # 5. 验证安装版本 google-chrome --version二、浏览器控制方式OpenClaw 当前支持的浏览器控制方式本质可以分为 3「种架构路径」「Managed Browser托管浏览器」「Remote CDP直接协议控制」「Existing-session via Chrome DevTools MCP会话接管」「什么是CDP?」**Chrome DevTools Protocol (CDP)**是一套基于JSON和WebSocket的底层协议它开放了调试和控制Chromium内核浏览器如Chrome、Edge的能力。简单来说它就像一个能让外部程序与浏览器内核进行「双向通信」的“遥控器”。\「什么是Chrome DevTools MCP?」**Chrome DevTools MCP**是一种强大的工具旨在通过「Model Context Protocol (MCP)」将Chrome开发者工具的功能扩展到 AI 编码助理如 Gemini、Copilot 等。它允许这些助理实时调试网页、分析性能并自动化浏览器操作从而提高代码生成和问题修复的效率。2.1「Managed Browser托管浏览器」由 OpenClaw 自动启动并管理一个浏览器实例。「控制方式」OpenClaw → 启动 Chromium → CDP → 控制浏览器「特点如下」自动启动浏览器自动管理 userDataDir自动建立 CDP 连接完全不依赖用户已有浏览器「配置如下:」# openclaw.json browser: { defaultProfile: openclaw, headless: true, noSandbox: true, executablePath: /usr/bin/google-chrome }可通过下面命令行直接修改配置并启动# 1. 使用独立浏览器需要此配置 openclaw config set browser.defaultProfile openclaw # 2. 服务器没有显示器必须开启 无头模式 才能在后台静默运行 openclaw config set browser.headless true # 3. 在 Linux 服务器尤其是以 root 身份运行时必须开启 禁用沙盒模式 否则 Chrome 会因权限安全机制无法启动 openclaw config set browser.noSandbox true # 4. 使用 $(which google-chrome) 自动获取二进制文件的实际安装路径通常是 /usr/bin/google-chrome动态设置 Chrome 可执行文件路径 openclaw config set browser.executablePath $(which google-chrome) # 5. 重启 openclaw 网关 openclaw gateway restart # 6. 为 openclaw 打开浏览器 openclaw browser start「检验如下」openclaw browser --browser-profile openclaw start openclaw browser --browser-profile openclaw open https://www.baidu.com # 帮助信息 openclaw browser --browser-profile openclaw --help通过浏览器状态查看openclaw browser status # 输出内容 profile: openclaw enabled: true running: true transport: cdp cdpPort: 18800 cdpUrl: http://127.0.0.1:18800 browser: custom detectedBrowser: custom detectedPath: /usr/bin/google-chrome profileColor: #FF4500「openclaw界面」在openclaw的聊天窗口中输入通过browser获取百度网页首页内容,输出结果如下2.2「Remote CDP直接协议控制」通过Chrome DevTools ProtocolCDP直接连接浏览器实例进行控制。「控制方式」OpenClaw → CDP WebSocket → Chrome「特点」直接连接浏览器调试端口可控制tab、DOM、网络、JS执行等底层能力支持attach已有tab或创建新tab不依赖 MCP 或扩展「配置如下」「cpdUrl中的ip地址和端口可修改成远程ip和端口地址。」browser: { defaultProfile: remote, profiles: { remote: { cdpUrl: http://127.0.01:9222, attachOnly: true, color: #00AA00 } } }可通过如下命令配置# 1. 使用独立浏览器需要此配置 openclaw config set browser.defaultProfile remote # 2. 远程cdp协议浏览器远程地址设置 attachOnly远程必须为 true禁止启动新浏览器仅连接到现有实例远程连接必须为 true openclaw config set --json browser.profiles {remote:{cdpUrl:http://127.0.0.1:9222,attachOnly:true,color:#00AA00}} # 3. 启动网关 openclaw gateway restart「注意」本种方式要先启动浏览器并设置cpd的远程调试端口为9222# 1. 启动局域网内容chrome浏览器设置远程调试端口 /usr/bin/google-chrome --remote-debugging-port9222 --user-data-dir/tmp/ChromeProfile # 2. 输出部分 DevTools listening on ws://127.0.0.1:9222/devtools/browser/9a756c13-fbae-483c-90b9-dbfebd4c2fbb测试远程端口是否可用curl http://127.0.0.1:9222/json/version # 输出内容 { Browser: Chrome/146.0.7680.177, Protocol-Version: 1.3, User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36, V8-Version: 14.6.202.31, WebKit-Version: 537.36 (ae03f7fb2cf1215853896d6a4c15fdceee2badb7), webSocketDebuggerUrl: ws://127.0.0.1:9222/devtools/browser/9a756c13-fbae-483c-90b9-dbfebd4c2fbb }「检验如下」openclaw browser --browser-profile remote start openclaw browser --browser-profile remote open https://www.baidu.com # 帮助信息 openclaw browser --browser-profile remote --help「聊天窗口」1、在开启--remote-debugging-port9222的浏览器中打开抖音并登录。2、在openclaw的聊天窗口输入2.3「Existing-session via Chrome DevTools MCP会话接管」通过Chrome DevTools MCP server接管一个「已经打开的浏览器实例」。属于CDP的一层工具化封装Model Context Protocol。同时也是直接控制本地浏览器共享用户个人profile「控制方式」OpenClaw → MCP Server → CDP → Existing Chrome Session「特点如下」不启动新浏览器复用已有tabs保留登录态需要用户确认attach通过MCP将CDP转换为tool接口「配置如下:」browser: { defaultProfile: user, profiles: { remote: { driver: existing-session, attachOnly: true, color: #00AA00 } } }可用如下命令配置# 1. 使用独立浏览器需要此配置 openclaw config set browser.defaultProfile user # 2. existing-session连接到已经运行的浏览器会话址设置 attachOnly 禁止启动新浏览器 openclaw config set --json browser.profiles {user:{driver:existing-session,attachOnly:true,color:#00AA00}} # 3. 启动网关 openclaw gateway restart「注意该方式和前面的remote一样都需要先启动浏览器」# 启动本地浏览器 /usr/bin/google-chrome本地浏览器启动后要开机远程调试在打开的浏览器地址栏中输入如下内容chrome://inspect/#remote-debugging示例检查命令openclaw browser --browser-profile user status「检验如下」openclaw browser --browser-profile user start openclaw browser --browser-profile user open https://www.baidu.com # 帮助信息 openclaw browser --browser-profile user --help「聊天窗口」1、本地浏览器已打开也完成了前面的设置2、在openclaw的聊天窗口输入“打开百度网址并生成网址快照”三、快速对比表特性Managed BrowserRemote CDPExisting-session MCP自动化程度完全自动半自动需手动启浏览器手动需用户打开浏览器并授权登录态复用❌✅指定 user-data-dir✅直接复用当前会话无头运行✅可启动时带--headless❌远程控制❌仅本地✅支持远程 IP❌通常本地需网络配置安全性中沙箱可禁用低端口无认证高用户确认同会话是否新建浏览器否✅ 是是否复用已有浏览器⚠️ 可 attach❌✅选择建议「需要无人值守的自动化任务」→「Managed Browser」「需要保留登录态且可接受手动启动浏览器」→「Remote CDP」「希望 AI 辅助自己日常浏览、调试」→「Existing-session MCP」