验证码服务 2Captcha 测评 2022 | 原理 用途 入门

背景

大家对网页验证码肯定不陌生,几乎所有带有登陆功能的网页或者 APP,都有验证码功能。

验证码不一定每一次登陆都会出现,但是当你登陆多次失败的时候就会让你输入验证码问题答案了,主要是为了防止你恶意登陆其他人的账户。或者有的网站更严格,每一次都会弹出验证码窗口,这种验证码通常为了防止机器人登陆,就像以前的 12306 火车票网站,每次买票的时候都会弹出验证码,而且很难校验成功,确实把脚本拦住了,但是把我们正常用户也拦住了。

需求

作为正常用户来说,其实不太希望搞太难的验证码,每一次手动点击都很烦,大家都不太喜欢校验码。特别是一些开发朋友在做自动化测试、脚本登陆的时候,验证码识别问题更为突出,网上也找了很多免费的验证码识别库,很难找到一个轻松绕过验证码的方法。

之前小编研究过验证码识别这一块的内容,发现了一个验证码识别服务提供商 2Captcha,并且尝试了下他们的服务,效果很不错。

接下来,小编讲讲自己对 2Captcha 的使用经验和体会。

原文:https://lwebapp.com/zh/post/2captcha-review

2Captcha 介绍

2Captcha 官网

根据官网的介绍,2Captcha 是一个自动验证码识别服务商,支持非常多的验证码类型,比如识别扭曲的文字、选择符合条件的图片、reCAPTCHA 点击我不是机器人,等等。

2Captcha 目标是连接需要实时识别许多验证码的客户和通过识别验证码赚钱的人。

2Captcha 官网:2captcha.com

为什么要用 2Captcha

就像前面提到的应用场景,有两类人群会有这个需求。

  1. 如果你是想做自动化测试、想使用脚本来登陆网站,这个时候就要用 2Captcha 验证码识别服务了。只要请求官方提供的接口,就能获得验证码校验成功的参数,快速绕开验证码。
  2. 或者你想做网赚,2Captcha 提供了人工校验验证码的后台,只需要点击各个验证码,达到一定数量,就可以赚钱了。特别适合学生党、全职妈妈、上班摸鱼人士,利用空闲时间赚钱零花钱,官方提供了多种收款方式。

所以 2Captcha 把这两类客户连接起来了,实现一个解决验证码识别问题的闭环方案。

2Captcha 开发体验

小编是从事开发工作的,所以通过阅读 2Captcha 的 API 文档,在自动化脚本中实现了验证码识别功能。

2Captcha 的 API 文档

简单来说,根据 2Captcha 提供的接口,把你的图像或验证码参数发送到他们的服务器,获取到任务的 ID,然后循环检查检验结果即可。

2Captcha 的接口文档写的非常详细,对每一种验证码类型提供了完整的操作步骤,基本上按照教程操作下来,都是预期的结果,包括各个接口的入参、返参、错误码等等。

这里列举了所有支持的验证码类型和费率

验证码类型每 1000 人的费率描述
Normal Captcha, Text Captcha$0.5-$1费率是灵活的,取决于服务的当前负载。 您可以在帐户设置中查看当前速率和限制最大速率。
reCAPTCHA V2$2.99该费率适用于通过令牌解决的 Google 的 reCAPTCHA V2。
reCAPTCHA V3$1.45, $2.99score <= 0.3, score > 0.3
reCAPTCHA Enterprise$2.99该费率适用于 Google 的 reCAPTCHA Enterprise。
Geetest$2.99该费率适用于 Geetest 验证码。
Grid Method, Coordinates$1.20该费率适用于您需要单击图像的任何验证码。
RotateCaptcha$0.50该费率适用于您需要旋转图像的任何验证码。
Arkose Labs FunCaptcha Token Method$2.99该费率适用于通过令牌解决的 Arkose Labs FunCaptcha。
KeyCaptcha$2.99该费率适用于 KeyCaptcha。
hCaptcha$2.99该费率适用于 hCaptcha。
Capy$2.99该费率适用于 Capy。
TikTok$2.99该费率适用于 TikTok captcha。

官网还提供了多种开发语言的完整代码案例,包括 Go、Python、PHP、Java、C#、C++ 等。

小编为了实现 B 站的自动登陆功能,大部分情况都在翻看官方的 API 文档,并用 Node.js 简单实现了一个可行的案例

具体的技术教程可以参考这篇 Nodejs Playwright 2Captcha 验证码识别实现自动登陆

所以如果你是一位开发者,请仔细阅读官网 API 文档。

2Captcha 优势

有朋友也会有疑问,为什么不用免费的验证码识别库呢?2Captcha 的优势在哪?

如果是自己做验证码识别,一般考虑的方案就是基于机器学习如 TensorFlow 库,做大量的图片识别训练来提高精确度,或者直接使用 pytesseract 做 OCR 识别。这类方案的限制就是只能识别简单的图片和文字,稍微复杂一点的动态图片和 reCAPTCHA 点击就没办法了。

说到底,机器识别的思路只能解决简单的场景,要真正完美绕过验证码,还是要靠人工。所以 2Captcha 基于这个思路,一边由开发者发送识别验证码的请求,一边是人工帮你点击,提供双向的服务解决复杂验证码问题。

根据小编的开发体验来说,除了接口开发非常简单之外,2Captcha 的识别成功率还是很高的,有任何问题,也可以根据官网提供的联系方式提供反馈。

总结

以上就是小编根据自己对自动识别验证码的需求,总结的一点使用 2Captcha 验证码校验接口的经验。总体来说还是很推荐尝试下 2Captcha,提高工作效率、节省时间。尝试 2Captcha ➜

参考

发表评论