如何在OpenClaw中解决验证码 – 使用CapSolver扩展的逐步指南

Anh Tuan
Data Science Expert
06-Mar-2026

当你的AI助手为你浏览网页时,CAPTCHAs 是最大的障碍。受保护的页面会阻止代理,表单无法提交,任务会因等待人工干预而停滞。
OpenClaw 是一个个人AI助手,可以通过自然语言浏览网页、填写表单、点击按钮并提取数据。但像任何浏览器自动化工具一样,它也会被CAPTCHAs卡住。
CapSolver 完全改变了这一现状。通过将CapSolver Chrome扩展加载到OpenClaw的浏览器中,CAPTCHAs会在后台自动且不可见地被解决。无需代码,无需从你的侧边调用API,也无需更改你与AI助手的交互方式。
最棒的是?你甚至不需要向AI提及CAPTCHAs。 你只需告诉它在提交前等待片刻——当它点击“提交”时,CAPTCHA已经解决了。
什么是OpenClaw?
OpenClaw 是一个你可以在自己的设备上运行的个人AI助手。它通过你已使用的渠道(如WhatsApp、Telegram、Slack、Discord、Signal、iMessage、Google Chat、Microsoft Teams等)来回答你。

核心功能
- 多渠道收件箱:通过WhatsApp、Discord、Telegram、Slack等与你的AI交谈
- 内置浏览器:代理可以打开标签页、导航页面、点击按钮、填写表单并截屏
- 本地优先:在你自己的硬件上运行——你的数据始终与你在一起
- 插件系统:通过自定义扩展和集成进行扩展
- 语音支持:在macOS、iOS和Android上与你的代理说话
浏览器工具
OpenClaw运行一个专用的Chromium浏览器配置文件,只有AI代理控制它。它完全与你的个人浏览器隔离。代理可以:
- 打开并导航到任何URL
- 读取页面内容并截屏
- 点击按钮、填写表单、选择下拉菜单
- 截图并生成PDF
- 管理多个标签页
可以把它想象成给你的AI助手一个独立的浏览器窗口。
什么是CapSolver?
CapSolver 是一个领先的CAPTCHA解决服务,提供AI驱动的解决方案来绕过各种CAPTCHA挑战。支持多种CAPTCHA类型和快速响应时间,CapSolver可以无缝集成到自动化工作流中。
支持的CAPTCHA类型
- reCAPTCHA v2 (基于图像和不可见)
- reCAPTCHA v3 & v3 Enterprise
- Cloudflare Turnstile
- Cloudflare 5秒挑战
- AWS WAF CAPTCHA
- 其他广泛使用的CAPTCHA和反机器人机制
为什么这个集成不同
大多数CAPTCHA解决集成需要你编写代码——创建API调用、轮询结果、将令牌注入隐藏表单字段。这就是使用Crawlee、Puppeteer或Playwright等工具的工作方式。
OpenClaw + CapSolver根本不同:
| 传统(基于代码) | OpenClaw(自然语言) |
|---|---|
编写一个 CapSolverService 类 |
在配置中添加扩展路径 |
调用 createTask() / getTaskResult() |
只需与你的AI交谈 |
通过 page.$eval() 注入令牌 |
扩展处理一切 |
| 在代码中处理错误、重试、超时 | 告诉AI“等待60秒,然后提交” |
| 每种CAPTCHA类型需要不同的代码 | 自动适用于所有类型 |
关键洞察:CapSolver Chrome扩展在代理的浏览器会话中运行。当代理导航到包含CAPTCHA的页面时,扩展会检测到它,在后台解决它,并注入令牌——在代理甚至尝试提交表单之前。
你只需要给它时间。 不需要告诉AI“解决CAPTCHA”,你只需说:
“去那个页面,等待60秒,然后点击提交。”
就是这样。AI根本不需要知道CapSolver的存在。
先决条件
在设置集成之前,请确保你已经:
- 安装了 OpenClaw 并运行网关
- 有一个 CapSolver账户 和API密钥(注册在这里)
- Chromium或Chrome用于测试(请参见下面的重要说明)
重要提示:你需要Chromium,而不是Google Chrome
Google Chrome 137+(2025年中发布)静默地移除了品牌构建中的
--load-extension支持。 这意味着在使用标准Google Chrome的自动化会话中无法加载Chrome扩展。没有任何错误——该标志只是被忽略。
这会影响Google Chrome和Microsoft Edge。你必须使用以下替代方案之一:
| 浏览器 | 扩展加载 | 推荐? |
|---|---|---|
| Google Chrome 137+ | 不支持 | 否 |
| Microsoft Edge | 不支持 | 否 |
| Chrome for Testing | 支持 | 是 |
| Chromium(独立版) | 支持 | 是 |
| Playwright的内置Chromium | 支持 | 是 |
如何安装Chrome for Testing:
bash
# 选项1:通过Playwright(推荐)
npx playwright install chromium
# 二进制文件路径可能如下:
# ~/.cache/ms-playwright/chromium-XXXX/chrome-linux64/chrome (Linux)
# ~/Library/Caches/ms-playwright/chromium-XXXX/chrome-mac/Chromium.app/Contents/MacOS/Chromium (macOS)
bash
# 选项2:通过Chrome for Testing直接下载
# 访问:https://googlechromelabs.github.io/chrome-for-testing/
# 下载与你的操作系统匹配的版本
安装后,注意二进制文件的完整路径——你将在配置中需要它。
分步设置
步骤1:下载CapSolver Chrome扩展
将CapSolver Chrome扩展下载并提取到 ~/.openclaw/capsolver-extension/:
- 前往 CapSolver扩展的GitHub发布页面
- 下载最新的
CapSolver.Browser.Extension-chrome-vX.X.X.zip - 解压zip:
bash
mkdir -p ~/.openclaw/capsolver-extension
unzip CapSolver.Browser.Extension-chrome-v*.zip -d ~/.openclaw/capsolver-extension/
- 验证解压是否成功:
bash
ls ~/.openclaw/capsolver-extension/manifest.json
你应该看到 manifest.json —— 这确认了扩展已放置在正确的位置。
步骤2:设置你的CapSolver API密钥
打开扩展的配置文件 ~/.openclaw/capsolver-extension/assets/config.js,并将 apiKey 值替换为你的:
js
export const defaultConfig = {
apiKey: 'CAP-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', // ← 你的密钥在这里
useCapsolver: true,
// ...其余配置
};
你可以在你的 CapSolver仪表板 上获取API密钥。
步骤3:配置浏览器
编辑你的OpenClaw配置文件 ~/.openclaw/openclaw.json 以启用浏览器并加载扩展:
json
{
"browser": {
"enabled": true,
"executablePath": "/path/to/chrome-for-testing/chrome",
"extensions": [
"~/.openclaw/capsolver-extension"
],
"noSandbox": true,
"defaultProfile": "openclaw"
}
}
替换 /path/to/chrome-for-testing/chrome 为你的Chrome for Testing或Chromium二进制文件的实际路径。例如:
- Linux(Playwright):
~/.cache/ms-playwright/chromium-1200/chrome-linux64/chrome - macOS(Playwright):
~/Library/Caches/ms-playwright/chromium-1200/chrome-mac/Chromium.app/Contents/MacOS/Chromium
注意:在大多数服务器环境、Docker容器和CI系统中,
noSandbox: true是必需的,因为无法初始化Chrome沙箱。在具有适当沙箱的桌面系统上,你可以省略此设置。
步骤4:重启网关
bash
# 如果使用PM2:
pm2 restart opencrawl --update-env
# 如果直接运行:
openclaw gateway restart
步骤5:验证设置
检查网关日志以确认一切正确加载:
bash
pm2 logs opencrawl --lines 20 --nostream
你应该看到这些关键行:
[browser/chrome] 加载 1 个扩展
[browser/chrome] 启动 Chrome: /path/to/chrome-for-testing (参数: 15)
高级检查——通过Chrome DevTools Protocol验证扩展是否激活:
bash
curl -s http://127.0.0.1:8091/json/list
查找具有 chrome-extension:// 的 service_worker 条目:
json
{
"title": "Service Worker chrome-extension://cnopfoopenkdblckmekkipihdnambjhf/background.js",
"type": "service_worker",
"url": "chrome-extension://cnopfoopenkdblckmekkipihdnambjhf/background.js"
}
如果你看到这个,CapSolver已加载并正在运行。

如何使用
这是最重要的部分。一旦设置完成,使用CapSolver与OpenClaw是非常简单的。
黄金法则
不要向AI提及CAPTCHAs或CapSolver。 在提交表单前给它一点时间。
AI代理不需要知道CAPTCHAs。扩展会在后台处理一切。你只需要在你的指令中包含一个等待时间,这样扩展就有时间在表单提交前解决挑战。
示例1:
将以下内容发送给你的OpenClaw代理(通过Discord、WhatsApp、Telegram或任何渠道):
去 https://example.com,等待60秒,
然后点击提交并告诉我页面上显示的文本。
幕后发生的事情:
- 代理导航到reCAPTCHA演示页面
- CapSolver的内容脚本检测到reCAPTCHA小部件
- 扩展调用CapSolver API并解决挑战(通常在10-20秒内)
- 令牌被注入到隐藏的表单字段中
- 60秒后,代理点击提交
- 页面显示:"Verification Success... Hooray!"
示例2:登录受保护的网站
去 https://example.com/login,填写邮箱字段为
"me@example.com" 和密码字段为 "mypassword123",
然后等待30秒并点击“登录”按钮。
告诉我登录后加载的页面。
示例3:提交Turnstile后面的表单
打开 https://example.com/contact,填写联系表单:
- 姓名:"John Doe"
- 邮箱:"john@example.com"
- 消息:"你好,我有关于你们服务的问题。"
等待45秒,然后点击“发送消息”。出现什么确认信息?
推荐的等待时间
| CAPTCHA类型 | 典型解决时间 | 推荐等待 |
|---|---|---|
| reCAPTCHA v2(复选框) | 5-15秒 | 30-60秒 |
| reCAPTCHA v2(不可见) | 5-15秒 | 30秒 |
| reCAPTCHA v3 | 3-10秒 | 20-30秒 |
| Cloudflare Turnstile | 3-10秒 | 20-30秒 |
提示:如果不确定,使用60秒。等待更久比过早提交更好。额外的等待时间不会影响结果。
有效的自然语言模式
以下是可以使用的经过验证的表达方式:
- "去[URL],等待60秒,然后提交表单"
- "导航到[URL],填写[字段],等待30秒,然后点击[按钮]"
- "打开[URL],大约一分钟后再点击提交并告诉我结果"
- "访问[URL],等待页面完全加载,然后提交"
不要这样说
避免这些——它们可能会让AI困惑或触发拒绝:
"等待CAPTCHA被解决"(AI不知道CAPTCHA)"使用CapSolver解决验证"(AI无法控制扩展)"点击reCAPTCHA复选框"(扩展处理这个——点击可能会干扰)
背后的工作原理
对于技术爱好者,以下是加载CapSolver扩展时发生的事情:
你的消息 OpenClaw网关
───────────────────────────────────────────────────
"去页面, ──► AI代理接收消息
等待60秒,提交" │
▼
浏览器工具:导航到URL
│
▼
Chromium加载页面
┌─────────────────────────────┐
│ 页面带有reCAPTCHA小部件 │
│ │
│ CapSolver扩展: │
│ 1. 内容脚本检测 │
│ reCAPTCHA在页面上 │
│ 2. 服务工作者调用 │
│ CapSolver API │
│ 3. 收到令牌 │
│ 4. 将令牌注入到 │
│ 隐藏表单字段 │
└─────────────────────────────┘
│
▼
AI代理等待60秒...
│
▼
浏览器工具:点击提交
│
▼
表单提交并带有有效令牌
│
▼
"验证成功!"
扩展如何加载
当OpenClaw的浏览器启动时,它会从配置中读取extensions列表,并通过--load-extension标志将每个路径传递给Chrome。这是Chrome用于开发人员扩展的相同机制——不需要特殊的插件系统。
- Chrome启动 时带有
--load-extension=~/.openclaw/capsolver-extension - 扩展激活 —— 其服务工作者启动,内容脚本被注入到每个页面
- 在包含CAPTCHA的页面上 —— 内容脚本检测到小部件,调用CapSolver API,并将解决方案令牌注入页面
完整配置参考
这是带有CapSolver扩展的 ~/.openclaw/openclaw.json 完整配置:
json
{
"browser": {
"enabled": true,
"executablePath": "/path/to/chrome-for-testing/chrome",
"extensions": [
"~/.openclaw/capsolver-extension"
],
"noSandbox": true,
"defaultProfile": "openclaw"
}
}
配置选项
| 选项 | 描述 |
|---|---|
browser.executablePath |
指向 Chrome for Testing 或 Chromium 二进制文件的路径(必需) |
browser.extensions |
要加载到 Chrome 中的扩展目录路径数组 |
browser.noSandbox |
在服务器/Docker 上设置为 true(Chrome沙盒需要特殊的内核功能) |
browser.defaultProfile |
浏览器配置文件名称(默认:"chrome") |
CapSolver API 密钥直接配置在扩展的 assets/config.js 文件中(参见上文步骤2)。
故障排除
扩展未加载
症状:网关日志显示 Loading 1 extension(s) 但 CDP 中没有出现 chrome-extension:// 目标。
原因:您使用的是品牌版 Google Chrome 137+,它会静默忽略 --load-extension。
解决方法:切换到 Chrome for Testing 或 Chromium。在配置中将 browser.executablePath 更新为指向正确的二进制文件。
验证您的 Chrome 版本:
bash
/path/to/your/chrome --version
# Chrome for Testing: "Chromium 143.0.7499.4"
# 品牌版 Chrome: "Google Chrome 143.0.7499.109"
CAPTCHA 未解决(表单失败)
可能原因:
- 等待时间不足 — 增加到 60 秒
- 无效的 API 密钥 — 检查您的 CapSolver 仪表板
- 余额不足 — 为 CapSolver 账户充值
- 扩展未加载 — 参见“扩展未加载”部分
浏览器首次操作超时
症状:网关重启后首次浏览器操作超时,但后续操作正常。
原因:Chromium 冷启动 + Playwright CDP 连接重试可能超过首次尝试的 20 秒工具超时。
解决方法:这是一个已知问题。只需重试命令 — 第二次尝试会成功,因为浏览器现在已预热。
切换浏览器后 Chrome 崩溃
症状:从品牌版 Chrome 切换到 Chrome for Testing 后,浏览器因磁盘缓存错误崩溃。
原因:用户数据目录由不同版本的 Chrome 创建,不兼容。
解决方法:删除旧的浏览器配置文件并重启:
bash
rm -rf ~/.openclaw/browser/openclaw/user-data
# 然后重启网关
最佳实践
1. 始终使用充足的等待时间
更多等待时间总是更安全。CAPTCHA 通常在 5-20 秒内解决,但网络延迟、复杂挑战或重试可能增加时间。30-60 秒是最佳选择。
2. 保持消息自然
避免使用:
"导航到 URL,等待验证码解决,然后提交"
改用:
"访问 URL,等待大约一分钟,然后提交表单"
自然的表述与 AI 更契合,避免触发安全拒绝。
3. 监控您的 CapSolver 余额
每次 CAPTCHA 解决都会消耗积分。定期查看 capsolver.com/dashboard 的余额以避免中断。
4. 在服务器上使用 noSandbox
在远程服务器、Docker 容器或 CI 环境中运行 OpenClaw 时,始终在浏览器配置中设置 noSandbox: true。Chrome 沙盒需要特殊的内核功能,大多数服务器环境不支持。
5. 为无头服务器设置 DISPLAY
Chrome 扩展需要显示,即使在无头服务器上也是如此。使用 Xvfb 创建虚拟显示:
bash
# 安装 Xvfb
sudo apt-get install xvfb
# 启动虚拟显示
Xvfb :99 -screen 0 1280x720x24 &
# 为 OpenClaw 设置 DISPLAY
export DISPLAY=:99
结论
OpenClaw + CapSolver 集成代表了一种全新的 CAPTCHA 解决方案。无需编写代码检测 CAPTCHA、调用 API 或注入令牌,您只需:
- 下载扩展 并将其添加到配置中
- 指向 Chromium(不是品牌版 Chrome)
- 自然地与 AI 交流 — 在表单提交前包含等待时间
CapSolver Chrome 扩展会处理其余一切 — 检测 CAPTCHA、通过 CapSolver API 解决,并将令牌注入页面。您的 AI 助手根本不需要知道 CAPTCHA 的存在。
这就是拥有 AI 助手时的 CAPTCHA 解决方式:无形、自动且无需代码。
准备好开始了吗? 注册 CapSolver 并使用优惠码 OPENCLAW 在首次充值时获得额外 6% 的奖励!
常见问题
我需要告诉 AI 关于 CapSolver 吗?
不需要。 实际上,您应避免在消息中提及 CAPTCHA 或 CapSolver。扩展在后台无形工作。只需在指令中包含等待时间(例如,“等待 60 秒,然后提交”)以给扩展时间解决页面上的任何 CAPTCHA。
为什么不能使用常规的 Google Chrome?
Google Chrome 137+(2025 年中发布)在品牌版中移除了 --load-extension 命令行标志。这意味着品牌版 Chrome 无法在自动化会话中加载扩展。您需要 Chrome for Testing 或独立的 Chromium,它们仍支持此标志。
CapSolver 支持哪些 CAPTCHA 类型?
CapSolver 支持 reCAPTCHA v2(复选框和隐形)、reCAPTCHA v3、Cloudflare Turnstile、AWS WAF CAPTCHA 等。Chrome 扩展会自动检测 CAPTCHA 类型并相应解决。
CapSolver 的费用是多少?
CapSolver 提供基于 CAPTCHA 类型和数量的有竞争力的定价。访问 capsolver.com 查看当前定价。
OpenClaw 是免费的吗?
OpenClaw 是开源的,可在自己的硬件上免费运行。您需要 AI 模型提供者的 API 密钥,以及 CapSolver 账户和积分用于 CAPTCHA 解决。
我应该告诉 AI 等待多久?
对于大多数 CAPTCHA,30-60 秒足够。实际解决时间通常为 5-20 秒,但增加额外缓冲可确保可靠性。不确定时,使用 60 秒。
可以在无头服务器上使用吗?
可以。您需要 Xvfb(X 虚拟帧缓冲区)来提供显示,因为 Chrome 扩展需要显示上下文。设置 DISPLAY=:99 并在后台运行 Xvfb :99。同时在浏览器配置中设置 noSandbox: true。
合规声明: 本博客提供的信息仅供参考。CapSolver 致力于遵守所有适用的法律和法规。严禁以非法、欺诈或滥用活动使用 CapSolver 网络,任何此类行为将受到调查。我们的验证码解决方案在确保 100% 合规的同时,帮助解决公共数据爬取过程中的验证码难题。我们鼓励负责任地使用我们的服务。如需更多信息,请访问我们的服务条款和隐私政策。
更多

如何解决人工智能代理的CAPTCHA挑战:使用n8n、CapSolver和OpenClaw进行数据提取
学习如何使用n8n、CapSolver和OpenClaw自动化AI代理的验证码解决。构建一个无需浏览器自动化或手动步骤即可从受保护网站提取数据的服务器端流程。

Lucas Mitchell
20-Mar-2026

如何通过Vercel代理浏览器解决CAPTCHA – 使用CapSolver的分步指南
学习如何将CapSolver与Agent Browser集成,以处理验证码并构建可靠的AI自动化工作流程。

Ethan Collins
18-Mar-2026

将 CapSolver 与 Web MCP 集成:面向自主代理的指南
增强您的AI代理的网页自动化能力。本指南详细介绍了如何在Web MCP框架内集成CapSolver以实现高效的验证码破解,确保操作的可靠性和合规性。

Aloísio Vítor
17-Mar-2026

基于大模型的人工智能验证码:为什么它更适合企业场景
AI视觉模型如何重塑CAPTCHA识别,以及企业级求解器为何需要数据、规模和定制训练。

Ethan Collins
13-Mar-2026

WebMCP 与 MCP:对AI代理有什么区别?
探索WebMCP与MCP在AI代理中的关键差异,了解它们在网页自动化和结构化数据交互中的作用。学习这些协议如何塑造AI代理能力的未来。

Lucas Mitchell
13-Mar-2026

开OpenClaw 对比 Nanobot:选择你的AI代理用于自动化
比较 OpenClaw 和 Nanobot,两个领先的 AI 代理框架,以实现高效自动化。了解它们的功能、性能以及 CapSolver 如何增强其能力。

Ethan Collins
11-Mar-2026


