Util::AntiGate - 通过 AntiGate 服务进行验证码识别
爬虫工具概览

该爬虫工具通常作为插件组件用于其他爬虫工具中,在这些工具中可能需要破解图片形式的验证码,例如:
SE::Yandex、
Check::RosKomNadzor,以及自定义 JavaScript 爬虫工具。
该爬虫工具的工作原理是将验证码图片发送到识别服务,并接收验证码上显示的文本值作为响应。识别的准确性完全取决于识别服务,有时也取决于验证码的设置。
有关此爬虫工具的连接和配置过程,请参阅文章验证码绕过设置
爬虫工具应用案例
🔗 数据抓取 Yandex
获取 Yandex 搜索结果及结果排名
🔗 JS 爬虫工具中的 Captcha
用于处理验证码的 JS 爬虫工具示例
功能
- 支持所有兼容 AntiGate 的服务:AntiCaptcha、RuCaptcha、2captcha、XEvil、CapMonster、CapMonster.cloud、CapSolver、captchas.io、ApiBar 等。
- 能够灵活配置等待响应时间、验证码参数,并向识别服务报告识别错误的验证码
使用场景
- 在内置爬虫工具中识别验证码,这些工具可选或必须通过识别验证码来获取结果
- 在自定义 JS 爬虫工具中识别验证码
- 识别图片中的少量文本数据(例如电话号码)
查询
查询时需要指定验证码的链接,例如:
https://files.a-parser.com/img/get-captcha-image.png
结果输出示例
$answer- 验证码答案$error- 如果发生错误,显示其描述
输出识别的文本
结果格式:
$answer
结果示例:
332822
可选设置
| 参数 | 默认值 | 描述 |
|---|---|---|
| Provider | AntiCaptcha | 选择识别服务,自动填入正确的服务地址 (url) |
| Provider url | 识别服务的域名,允许覆盖服务域名,可以为空 | |
| Client key | 服务的访问密钥 | |
| HTTP errors retries | 5 | 网络故障时尝试识别验证码的次数 |
| HTTP timeout | 60 | 服务器响应超时时间(秒) |
| Wait between get status | 5 | 轮询 AntiGate 服务验证码状态的间隔时间 |
| Max wait time | 300 | 等待验证码识别的最长时间 |
| NO_SLOT_AVAILABLE retries | 5 | 如果服务提示过载,尝试将验证码上传到 AntiCaptcha 服务的次数 |
| NO_SLOT_AVAILABLE interval | 2 | 两次尝试之间的等待间隔(秒) |
| Param "phrase" | 0 | 0 = 默认值(一个单词)。1 = 验证码包含两个单词 |
| Param "regsense" | 0 | 0 = 默认值(不区分大小写)。1 = 区分大小写 |
| Param "numeric" | 0 | 0 = 默认值。1 = 验证码仅由数字组成。2 = 验证码不含数字 |
| Param "calc" | 0 | 0 = 默认值。1 = 验证码为数字算术题 |
| Param "min_len" | 0 | 0 = 默认值。>0 = 工作人员必须输入的验证码文本最小长度 |
| Param "max_len" | 0 | 0 = 默认值(无限制)。>0 = 工作人员必须输入的验证码文本最大长度 |
| Param "is_russian" | 0 | 0 = 默认值。1 = 将验证码展示给懂俄语的工作人员 |
| Fake answer | ☐ | 模拟回答,不使用服务而是直接返回随机字符串作为答案,用于测试爬虫工具 |
| Report bad captchas | ☐ | 如果禁用此选项,将节省检查验证码正确性请求的时间。适用于 CapMonster 和 XEvil |
| Log captcha images | ☐ | 控制在日志中输出验证码图片 |
| Stop task on zero balance | ☑ | 如果识别服务余额耗尽,则停止任务 |