跳到主要内容
版本:latest

Day7:给龙虾小弟装上眼睛

发布日期: 2026-03-18
养成状态: 🦞 龙虾成熟期
预计耗时: 10 分钟


📖 故事:龙虾说它看不见

昨天有用户在群里问:

"让龙虾帮我截图宝塔官方首页,它说'无法使用浏览器功能',咋回事?"

我一看,明白了。

龙虾没有眼睛。

不是比喻,是真的没有。OpenClaw 刚装好时,浏览器组件是关闭的 — 它只能靠 web_fetch 技能"摸"网页,遇到比较严格的网站(宝塔首页、公众号、GitHub)就抓瞎。

这就像给你一台电脑,没装浏览器。你能干活吗?不能。

所以今天,我们给龙虾装上眼睛。

装好后,它可以:

  • 截图任何网页(包括需要登录的)
  • 抓取 JavaScript 动态渲染的内容
  • 自动点击、填表、搜索
  • 监控页面变化(价格、库存、公告)

一句话:之前 web_fetch 搞不定的,现在都能搞。

alt text


🎯 今天只做一件事

  • 在服务器上安装 Chrome 浏览器
  • 配置 OpenClaw 浏览器功能
  • 验证可以正常使用

预计耗时:15 分钟(下载 Chrome 占 10 分钟,看网络)


📋 第一步:检测当前状态(1 分钟)

别急着装,先看看你需不需要装。

运行检测命令

openclaw browser status

根据输出选择分支

情况 A:显示 running: true

profile: openclaw
enabled: true
running: true
cdpPort: 18800
browser: custom

🎉 恭喜,浏览器已经装好了。你可以:

  • 直接跳到"装好后能做什么"部分试试功能
  • 或者去看 Day8(定时任务)

情况 B:显示 running: falsebrowser: unknown

running: false
browser: unknown

这是最常见的情况。继续往下看,需要安装。

情况 C:命令报错 openclaw: command not found

OpenClaw 没装好,或者环境变量没配。先去看 Day1 安装教程:


🔧 第二步:安装 Chrome 浏览器(10 分钟)

步骤 1:确认系统类型

cat /etc/os-release

ID=NAME= 字段:

  • Ubuntu/Debian → 用 .deb
  • CentOS/OpenCloudOS/Fedora → 用 .rpm

我下面的教程会同时给出两种系统的命令,你对着选。


步骤 2:安装依赖包

浏览器不是光杆司令,需要一些系统库支持。

Ubuntu/Debian:

apt update
apt install -y fonts-liberation xdg-utils fonts-noto-cjk

CentOS/OpenCloudOS:

yum install -y liberation-fonts xdg-utils google-noto-sans-cjk-fonts

这三个包的作用:

包名作用不装的后果
fonts-liberation浏览器字体支持页面字体显示异常
xdg-utils桌面工具(OpenClaw 需要)浏览器无法启动
fonts-noto-cjk中文字体支持中文显示为方框 ❌

我踩的坑: 一开始没装 fonts-noto-cjk,浏览器能启动,但打开中文网页全是方框。折腾半天才发现是字体问题。


步骤 3:下载 Chrome 安装包

Ubuntu/Debian:

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

CentOS/OpenCloudOS:

wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

⚠️ 注意: 谷歌的下载服务器在国内访问可能比较慢,如果 wget 卡住或报错,看后面故障排查部分的国内镜像方案。

下载完成后,当前目录会多一个 .deb.rpm 文件。


步骤 4:安装 Chrome

Ubuntu/Debian:

dpkg -i google-chrome-stable_current_amd64.deb
apt --fix-broken install -y

CentOS/OpenCloudOS:

yum localinstall -y ./google-chrome-stable_current_x86_64.rpm

⚠️ 关键点: apt --fix-broken installyum localinstall 这一步不能省。它会自动安装 Chrome 需要的其他依赖包。如果直接用 dpkg -i,大概率会报依赖错误。


步骤 5:验证 Chrome 安装

which google-chrome

预期输出:

/usr/bin/google-chrome

如果没有返回,说明安装失败。跳到后面"故障排查"部分。


⚙️ 第三步:配置 OpenClaw(5 分钟)

Chrome 装好了,但 OpenClaw 还不知道它在哪。需要配 4 个参数。

执行 4 条配置命令

# 1. 设置默认浏览器模式
openclaw config set browser.defaultProfile "openclaw"

# 2. 开启无头模式(服务器没有图形界面)
openclaw config set browser.headless true

# 3. 允许 root 用户运行(必需)
openclaw config set browser.noSandbox true

# 4. 设置 Chrome 路径
openclaw config set browser.executablePath "/usr/bin/google-chrome"

参数解释:

参数作用不配置的后果
headless无头模式(无图形界面运行)报错 "Unable to open X display"
noSandbox允许 root 用户运行报错 "Running as root without --no-sandbox is not supported"
executablePath告诉 OpenClaw Chrome 在哪报错 "Chrome executable not found"
defaultProfile设置默认浏览器模式不设置则用默认配置(可能不生效)

重启 Gateway

openclaw gateway restart

⚠️ 注意: 配置变更后必须重启 Gateway,否则不生效。我一开始就没重启,折腾了半天以为配置错了。


启动浏览器

openclaw browser start

验证状态

openclaw browser status

预期输出:

profile: openclaw
enabled: true
running: true
cdpPort: 18800
browser: custom
detectedPath: /usr/bin/google-chrome

看到 running: true,就成功了。


🐛 第四步:故障排查(遇到问题看这里)

问题 1:下载 Chrome 失败/超时

现象: wget 报错或卡住不动

原因: 谷歌服务器国内访问慢

解决: 使用国内镜像

# 华为云镜像(CentOS/OpenCloudOS)
wget https://repo.huaweicloud.com/chrome/rpm/google-chrome-stable_current_x86_64.rpm

# 或者阿里云镜像(Ubuntu/Debian)
wget https://mirrors.aliyun.com/google-chrome/google-chrome-stable_current_amd64.deb

问题 2:中文网页显示为方框 ❌

现象: 浏览器能启动,但打开中文网页,文字全是方框

原因: 缺少中文字体

解决:

# Ubuntu/Debian
apt install -y fonts-noto-cjk

# CentOS/OpenCloudOS
yum install -y google-noto-sans-cjk-fonts

# 重启浏览器
openclaw browser stop
openclaw browser start

问题 3:报错 "Unable to open X display"

现象: 运行 openclaw browser start 失败,报错:

[ERROR:browser_main_loop.cc(1443)] Unable to open X display.

原因: 服务器没有图形界面,但 Chrome 尝试打开 X display

解决:

openclaw config set browser.headless true
openclaw gateway restart
openclaw browser start

问题 4:报错 "Running as root without --no-sandbox"

现象: 浏览器启动失败,报错:

[ERROR:zygote_host_impl_linux.cc(100)] Running as root without --no-sandbox is not supported.

原因: 用 root 用户运行 Chrome,但没有配置 noSandbox

解决:

openclaw config set browser.noSandbox true
openclaw gateway restart
openclaw browser start

⚠️ 安全提醒: noSandbox 会降低 Chrome 的安全性,但在服务器环境(只有你访问)是可以接受的。


问题 5:which google-chrome 没有返回

现象: Chrome 安装成功但找不到路径

原因: 安装路径不是默认的 /usr/bin/google-chrome

解决:

# 查找 Chrome 实际位置
find / -name "google-chrome" 2>/dev/null

# 找到后配置正确路径(假设找到的是 /opt/google/chrome/google-chrome)
openclaw config set browser.executablePath "/opt/google/chrome/google-chrome"
openclaw gateway restart
openclaw browser start

问题 6:浏览器状态一直是 running: false

现象: 启动命令显示成功,但 openclaw browser status 还是 running: false

原因: Gateway 没有加载最新的浏览器配置

解决:

openclaw gateway restart
openclaw browser start

问题 7:飞书机器人说"无法使用浏览器"

现象: openclaw browser status 显示正常,但在飞书让机器人截图,它说"无法使用浏览器功能"

原因: 配置文件 profile 字段不对

解决:

# 检查 openclaw.json 的 browser.profile 字段
# 应该是 "openclaw" 或 "full",不是 "messaging"
openclaw config set browser.defaultProfile "openclaw"
openclaw gateway restart

如果还不行,检查飞书机器人的权限配置,确保它有权使用浏览器技能。


✅ 第五步:验证清单

按顺序检查,全部通过才算成功:

  • which google-chrome 返回 /usr/bin/google-chrome
  • openclaw browser status 显示 running: true
  • 能打开网页并截图
  • 能正常显示中文(不是方框)

alt text

alt text


📌 命令速查表

功能命令说明
检测状态openclaw browser status先看这个,决定要不要装
确认系统cat /etc/os-releaseUbuntu 还是 CentOS
安装依赖apt install ... / yum install ...根据系统选择
下载 Chromewget https://...谷歌官方源或国内镜像
安装 Chromedpkg -i / yum localinstall根据系统选择
验证路径which google-chrome应返回 /usr/bin/google-chrome
配置 headlessopenclaw config set browser.headless true无桌面模式必需
配置 noSandboxopenclaw config set browser.noSandbox trueroot 用户必需
配置路径openclaw config set browser.executablePath "..."告诉 OpenClaw Chrome 在哪
重启 Gatewayopenclaw gateway restart配置变更后必需
启动浏览器openclaw browser start最后一步
截图测试openclaw browser screenshot验证能用

一键养成按钮

学习这篇文章https://docs.bt.cn/btclaw/day7,安装浏览器插件,并封装成技能库,并测试浏览器功能

🚀 装好后能做什么

浏览器装好,龙虾才算真正有了眼睛。现在你可以:

1. 截图任何网页

"帮我截图宝塔官方首页"
"截个 GitHub Trending 看看"

2. 抓取动态内容

"打开这个公众号文章,提取正文"
"抓取这个页面的所有评论"

3. 自动化操作

"打开 Google,搜索 OpenClaw"
"登录这个网站,点击下载按钮"

4. 监控变化

"每天早上 9 点,检查这个商品有没有货"
"监控这个公告页,有新内容通知我"

🦞 龙虾碎碎念

"终于有眼睛了,能看到网页了。"

"之前 web_fetch 搞不定的宝塔首页、公众号,现在都能看了。"

"但别让我干坏事,比如自动抢票...(其实可以)"

"明天见,明天我学主动干活(定时任务)。"


📊 明日预告

Day8:让龙虾主动干活 — 定时任务 + 自动推送

  • 每天早上 9 点,自动查 AI 新闻发给你
  • 定时监控网页变化,有新内容自动通知
  • cron 配置详解,让龙虾 7×24 小时自动工作

(终于可以躺平了。)


最后更新: 2026-03-19
作者: Bacon 大王
状态: 龙虾成长期 Day7/∞
字数: 约 3500 字
阅读时间: 约 15 分钟

🦞 龙虾养成计划 系列文章: