# reCAPTCHA v2 图像识别

> 用 YesCaptcha 识别 reCAPTCHA v2 的图片题（ReCaptchaV2Classification）：上传 3x3、4x4 或 1x1 图片和题目 ID，同步返回要点击的格子；按图片大小计价，题目 ID 对照表。

Source: https://docs.yescaptcha.com/zh/tasks/recaptcha-classification/ · Last verified: 2026-10-15

`ReCaptchaV2Classification` 识别 reCAPTCHA v2 弹出的图片题：把图片和题目 ID 发过来，返回应该点击哪几个格子，由你的程序在浏览器里点击。它**不返回 token**。同步返回，一次 `createTask` 请求就拿到结果；3x3、4x4 图片每张 6 点（0.006 元），1x1 小图更便宜，见下表。

> **提示:** 不想自己写点击逻辑，可以直接用 [浏览器插件](https://docs.yescaptcha.com/zh/extension/)，它基于这个接口自动点击。

- POST `https://api.yescaptcha.com/createTask` (国际节点)
- POST `https://cn.yescaptcha.com/createTask` (国内节点)

## 类型与价格

| 任务类型 | 价格 | 返回方式 | 说明 |
| --- | --- | --- | --- |
| `ReCaptchaV2Classification` | 6 点（0.006 元） | 同步 | 1x1 小图（100x100）2 点；3x3（300x300）、4x4（450x450）6 点 |

## 请求参数

| 字段 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `type` | string | 是 | 任务类型，取值见本页"类型与价格" |
| `image` | string | 是 | 题目图片的 Base64 编码，不带 `data:` 前缀 |
| `question` | string | 是 | 题目的 ID（如 `/m/0k4j`），对照表见本页"题目 ID" |
| `confidence` | number | 否 | 置信度阈值，0 到 1。只对 3x3 图片有效：传了（建议 0.5）返回所有高于这个值的格子，不传返回最可能的 3 个 |

图片必须缩放到标准尺寸，服务端按尺寸判断题型：

| 题型 | 图片尺寸 | 返回 |
| --- | --- | --- |
| 3x3 九宫格（“选择所有图片”） | 300 × 300 | `objects`：要点击的格子 |
| 4x4 十六宫格（“选择所有图块”） | 450 × 450 | `objects`：要点击的格子 |
| 1x1 小图（3x3 点击后刷新出来的单张图） | 100 × 100 | `hasObject`：这张图要不要点 |

是截图的话，看题目判断：3x3 的题目是“选择所有图片”（Select all images with …），4x4 是“选择所有图块”（Select all squares with …）。

## 请求示例

POST https://api.yescaptcha.com/createTask

```json
{
  "clientKey": "YOUR_CLIENT_KEY",
  "task": {
    "type": "ReCaptchaV2Classification",
    "image": "BASE64_IMAGE",
    "question": "/m/0k4j"
  }
}
```

## 返回结果

3x3、4x4：

```json
{
  "errorId": 0,
  "status": "ready",
  "solution": { "objects": [1, 5, 8], "type": "multi" },
  "taskId": "3a9e8cb8-3871-11ec-9794-94e6f7355a0b"
}
```

1x1 小图：

```json
{ "errorId": 0, "status": "ready", "solution": { "hasObject": true, "type": "single" } }
```

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `objects` | array | 应该点击的图片序号（从 0 开始，按从左到右、从上到下） |
| `hasObject` | boolean | 1x1 小图时返回：这张图里是否有目标 |
| `type` | string | 题目类型：`multi`（3x3、4x4 大图，看 `objects`）、`single`（1x1 小图，看 `hasObject`）；hCaptcha 拖动题为 `drag` |

格子的编号从 0 开始，从左到右、从上到下：

![3x3 九宫格的格子编号 0 到 8](https://docs.yescaptcha.com/_astro/recaptcha-3x3-index.C2AG6XA0_1qgyOb.webp)

![4x4 十六宫格的格子编号 0 到 15](https://docs.yescaptcha.com/_astro/recaptcha-4x4-index.CE_Q3Ngp_Z1pmx9g.webp)

## confidence：一次返回所有符合的格子

3x3 题目点完之后通常会刷新出 1x1 小图，需要继续判断。如果不方便获取小图（例如在手机端开发），可以传 `confidence`：

-   不传时，3x3 图片返回得分最高的 3 个格子（reCAPTCHA 要求至少点 3 个）。
-   传了（建议 `0.5`）时，返回所有得分高于这个值的格子，可能多于或少于 3 个；没有符合的返回空数组。这样不用再截 1x1 小图。
-   对 4x4 和 1x1 图片没有作用。

## 题目 ID

`question` 填题目的 ID（以 `/m/` 开头），不是题目文字。ID 在 reCAPTCHA 加载题目的请求（`reload` 或 `userverify`）的响应里，和图片一起下发。下表是常见题目，中文仅供参考：

共 16 种

| 题目 ID | 题目（英文） | 中文说明 |
| --- | --- | --- |
| `/m/0pg52` | `taxis` | 出租车 |
| `/m/01bjv` | `bus` | 公交车（含校车） |
| `/m/04_sv` | `motorcycles` | 摩托车 |
| `/m/013xlm` | `tractors` | 拖拉机 |
| `/m/01jk_4` | `chimneys` | 烟囱 |
| `/m/014xcs` | `crosswalks` | 人行横道 |
| `/m/015qff` | `traffic lights` | 红绿灯 |
| `/m/0199g` | `bicycles` | 自行车 |
| `/m/015qbp` | `parking meters` | 停车计价器 |
| `/m/0k4j` | `cars` | 汽车 |
| `/m/015kr` | `bridges` | 桥 |
| `/m/019jd` | `boats` | 船 |
| `/m/0cdl1` | `palm trees` | 棕榈树 |
| `/m/09d_r` | `mountains or hills` | 山 |
| `/m/01pns0` | `fire hydrant` | 消防栓 |
| `/m/01lynh` | `stairs` | 楼梯 |

没有匹配的题目

返回 `ERROR_UNKNOWN_QUESTION` 说明 ID 填错了或者这道题暂不支持；`ERROR_UNKNOW_450x450_QUESTION` 说明这道题暂不支持 4x4 图片，在网页上刷新换一题即可。

## 上报和返点

点击后验证失败的，可以在 1 小时内用 [`report`](https://docs.yescaptcha.com/zh/api/report/) 上报，约 24 小时后结算返点，规则见 [计费与退点](https://docs.yescaptcha.com/zh/getting-started/billing/)。

## 相关教程

-   [reCAPTCHA v2 图像识别模拟点击（Selenium）](https://docs.yescaptcha.com/zh/guides/recaptcha-click-selenium/)
-   [reCAPTCHA v2（返回 token）](https://docs.yescaptcha.com/zh/tasks/recaptcha-v2/)
