如何使用 CapMonster Cloud 在 n8n 中解决 reCAPTCHA v2

如果您使用 n8n 自动化业务流程,可能遇到过这种情况:由于网站要求完成 reCAPTCHA v2 验证,workflow 会停止运行。在获得令牌之前,流程将无法继续执行。
无需手动解决 CAPTCHA 或寻找其他处理方式,只需在 workflow 中添加 CapMonster Cloud 节点。该节点会自动提交 CAPTCHA 任务并返回可用的令牌。请在下一个请求中使用此令牌– workflow 即可继续运行,无需您执行额外操作!
CapMonster Cloud 节点的工作原理
CapMonster Cloud 节点可自动提交 CAPTCHA 解决任务并获取结果。首先,您可以手动指定 CAPTCHA 参数,也可以在 workflow 的前一个步骤中获取这些参数。之后,CapMonster Cloud 节点会提交任务,并返回可用的令牌或其他结果。
接下来,只需在下一个节点(操作)中使用该结果– 例如提交表单、发送 HTTP 请求或继续与网站交互。
以下是一个用于解决 CAPTCHA 的基础 workflow 示例:

所需准备
开始之前,建议先阅读 CapMonster Cloud 文档。
配置前,请准备:
- n8n 账户(可用实例);
- CapMonster Cloud 账户;
- CapMonster Cloud API 密钥;
- 充足的账户余额。
配置过程中还需要:
- 包含 reCAPTCHA v2 的页面 URL;
- 网站密钥 sitekey;
- 将使用所获令牌的请求参数。
下文将介绍如何获取和配置这些值。
安装 CapMonster Cloud 节点
从节点面板安装
打开 workflow,然后点击 Add first step... 或 + 按钮。

在搜索栏中输入:CapMonster Cloud。
选择找到的节点,然后点击 Install node。

通过 npm 安装
对于 self-hosted n8n,可以通过 npm 手动安装该节点。
停止 n8n,打开终端并执行:
mkdir -p ~/.n8n/nodes
cd ~/.n8n/nodes
npm init -y
npm install @zennolab_com/n8n-nodes-capmonstercloud
然后重新启动 n8n。
安装完成后,该节点将在 Community nodes 中可用。

选择 reCAPTCHA v2
在 Actions 部分中,选择用于解决 reCAPTCHA v2 的任务。

对于 reCAPTCHA,CapMonster Cloud 可以以令牌或点击序列的形式返回解决结果。在本示例中,我们将获取令牌,并将其发送到测试页面 https://lessons.zennolab.com/captchas/recaptcha/v2_simple.php?level=high,以完成 reCAPTCHA 验证。
连接 API 密钥
在凭据字段中,点击 Create new credential。
在打开的窗口中,将 CapMonster Cloud API 密钥粘贴到 API Key 字段,然后点击 Save。

API 密钥应仅存储在 n8n 的凭据系统中。请勿将其直接添加到 workflow 参数中,也不要在导出的 JSON 文件中公开。
指定 reCAPTCHA v2 参数
创建 reCAPTCHA v2 解决任务通常需要两个主要值:
Website URL – 部署 CAPTCHA 的页面完整地址;
Website Key – reCAPTCHA 网站密钥,也称为 sitekey。
使用开发者工具查找这些值(有关如何查找参数的更多信息,请参阅文档):
打开包含 CAPTCHA 的页面,然后按 F12 启动开发者工具。转到 Elements 选项卡,并使用搜索功能(Ctrl + F)查找 data-sitekey ,或搜索关键词 sitekey。

将找到的值复制到 Website Key 字段中,并将页面地址(https://lessons.zennolab.com/captchas/recaptcha/v2_simple.php?level=high)– 复制到 Website URL 字段中。
我们的服务支持的最新 User-Agent 会自动设置。

执行操作
填写必填参数后,点击 Execute step。
Execute step 仅执行当前选中的节点。
Execute workflow 会运行整个 workflow。
如果任务执行成功,OUTPUT 面板中将显示包含解决结果的对象。对于 reCAPTCHA v2,其中将包含需要发送到目标网站的令牌。
返回结果的结构大致如下:

将令牌传递到 HTTP Request
好消息– 您已经从服务中获得了令牌!现在可以继续执行 workflow,并使用该令牌完成验证。在 CapMonster Cloud 节点后添加 HTTP Request 节点。
请在 CAPTCHA 解决完成后立即使用获得的令牌。不要保存令牌以供重复使用,也不要多次发送同一个令牌。每次新的验证都需要重新获取结果。

要确定 URL 和请求结构,请手动完成 CAPTCHA,并在开发者工具的 Network 选项卡中查看已发送的请求。
手动完成 reCAPTCHA 并点击“提交”按钮后,Network 选项卡中会出现发送至以下地址的 POST 请求:https://lessons.zennolab.com/captchas/recaptcha/verify.php?type=v2&subtype=simple&level=high。
这是接收 CAPTCHA 验证结果的端点。

请求正文中会传递已获取的 reCAPTCHA 令牌,其参数名称为 "g-recaptcha-response"。
使用获取的信息配置 HTTP Request 节点:
- Method – 选择 POST;
- URL – https://lessons.zennolab.com/captchas/recaptcha/verify.php?type=v2&subtype=simple&level=high;
- 启用 Send body;
选择正文类型:
Body Content Type: Form URL-Encoded
添加参数:
Name: g-recaptcha-response
- 在 Specify Body 字段中,传入从 CapMonster Cloud 节点获取的值:

运行 workflow 并检查网站响应
执行请求后,服务器将返回一个包含验证结果的 HTML 页面。
如果验证成功,HTML 中将包含 `"success": true`。
响应中还会包含验证请求的结果:
{
"success": true,
"challenge_ts": "2026-07-24T10:08:52Z",
"hostname": "lessons.zennolab.com"
}
从 HTML 中提取结果
workflow 的主要部分已经完成!为了便于后续处理,只需解析发送令牌后获得的 HTML,并从完整代码中提取验证结果– CAPTCHA 是否成功通过或是否发生错误。
可以使用 Code 节点完成此操作:
- 在 HTTP Request 节点后添加 Code 节点(JavaScript 语言);
将默认代码替换为以下内容:
const html = typeof $json.body === "string" ? $json.body : typeof $json.data === "string" ? $json.data : JSON.stringify($json); return { json: { success: html.includes('"success": true') }, };
由于页面中包含文本 `"success": true`,代码会检查返回的 HTML 中是否存在该文本:
如果找到该文本,success 字段的值为 true;
如果未找到该文本,success 字段的值为 false。
执行 Code 节点后,结果将如下所示:

用于验证的值取决于目标网站返回的响应。请将 `"success": true` 替换为实际的成功标识,例如页面上显示的消息、JSON 值、响应状态、最终 URL 或其他合适的参数。
常见错误及解决方法
| 问题 | 检查内容 |
| 安装后未显示节点 | 确认安装过程未出现错误,然后重新启动 n8n。对于 self-hosted 版本,请检查是否允许使用 community nodes。 |
| CapMonster Cloud 未返回令牌 | 检查 API 密钥、余额、Website URL、Website Key,以及任务所需的必填参数是否完整。 |
| 网站不接受令牌 | 确认令牌未过期且未被重复使用。检查 endpoint、字段名称、cookies、请求头、表单参数、代理和会话数据。 |
解决 CAPTCHA 时可能出现的完整错误列表,请参阅文档中的相应部分。
如果您在使用 CapMonster Cloud 通过 n8n 解决 reCAPTCHA v2 时遇到困难,请联系我们的支持团队,我们将帮助您解决问题。
总结
至此,配置已经完成!现在可以将 reCAPTCHA v2 的解决过程作为常规自动化步骤集成到 n8n workflow 中。
该流程会获取 CAPTCHA 参数,将其传递给 CapMonster Cloud,接收可用的令牌,并在下一步请求中将其发送到目标网站或 API。如有需要,还可以在 Code 节点中进一步检查响应,并根据结果将 workflow 引导到相应分支。
完成首次配置后,无需再手动重复这一过程。关键是– 正确传递 CAPTCHA 参数、保留当前会话数据,并在获取结果后立即使用。这样可以节省时间,让您专注于 workflow 本身的业务逻辑。






