在本篇文章中,我们将介绍如何集成 Recaptcha2 图像识别 API。该 API 可以识别用户输入的内容和 Recaptcha2 验证图像,最终返回需要点击的小图像的坐标,以完成验证。
环境准备
在使用 API 之前,您需要在 Recaptcha2 图像识别 API 页面申请相应的服务。首次申请后,您将获得一定的免费额度,便于您进行 API 的使用和测试。
详细步骤
申请 API 服务
- 访问 Recaptcha2 图像识别 API 页面。
- 点击"获取"按钮,如下图所示:

- 如果您未登录或未注册,系统会自动重定向到登录页面,请完成注册或登录操作。
获取验证码图像
我们需要从网站上抓取 Recaptcha2 验证图像。示例网站为:https://www.google.com/recaptcha/api2/demo。您需要点击复选框以显示验证码图像。如下图所示:

在图中,黄色箭头指向的文本是后续提到的 question 值。首先,我们需要传递一个名为 image 的字段,即具体的 Recaptcha2 验证图像(图中红色箭头所指)。请将图像缩放至标准尺寸(100x100、300x300、450x450),以便服务能够识别图像类型。推荐使用 Photopea 网站进行图像的压缩和调整。
压缩后的图像如下:

设置请求参数
您还需要输入与验证码图像相关的识别内容参数 question。以下是内容表供您参考:
中文内容表
json
{
"/m/0pg52": "出租车",
"/m/01bjv": "巴士",
"/m/02yvhj": "校车",
"/m/04_sv": "摩托车",
"/m/013xlm": "拖拉机",
"/m/01jk_4": "烟囱",
"/m/014xcs": "人行横道",
"/m/015qff": "红绿灯",
"/m/0199g": "自行车",
"/m/015qbp": "停车计价表",
"/m/0k4j": "汽车",
"/m/015kr": "桥",
"/m/019jd": "船",
"/m/0cdl1": "棕榈树",
"/m/09d_r": "山",
"/m/01pns0": "消防栓",
"/m/01lynh": "楼梯"
}
英文内容表
json
{
"/m/0pg52": "taxis",
"/m/01bjv": "bus",
"/m/02yvhj": "school 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"
}
根据以上内容,我们可以将参数 question 设置为消防栓对应的 /m/01pns0。
设置请求头和请求体
您需要设置请求头,包括:
accept: 希望接收的响应结果格式,这里填写为application/json。authorization: 调用 API 的密钥。
另外,设置请求体,包括:
image: Base64 编码的验证码图像。question: 问题 ID,参考上面的表格。
点击"试用"按钮进行测试,您将获得如下结果:
json
{
"solution": {
"size": 300,
"label": "/m/01pns0",
"confidences": [
0,
0.0007,
1,
0.0003,
0.0046,
1,
0,
1,
0
],
"objects": [
2,
5,
7
],
"type": "multi"
}
}
处理错误
当调用 API 时,如果出现错误,API 将返回相应的错误代码和消息。例如:
400 token_mismatched: 错误请求,可能由于缺少或无效参数。401 invalid_token: 未授权,令牌无效或缺失。429 too_many_requests: 请求过多,超出速率限制。500 api_error: 内部服务器错误。
错误响应示例
json
{
"success": false,
"error": {
"code": "api_error",
"message": "fetch failed"
},
"trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
总结
通过本指南,您已学习如何使用 Recaptcha2 图像识别 API,使用户能够输入识别内容并处理 Recaptcha2 验证图像,最终返回需要点击的小图像坐标。希望本指南能帮助您更好地集成和使用该 API。如有任何问题,请随时联系技术支持团队。
技术标签:#Recaptcha2 #图像识别 #API集成 #Python #开发者工具