谷歌验证码端口二: /v3/recaptcha
source link: https://shimo.im/docs/5o4z8XhhvsUSzYFa/read
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
最近更新: 7月7日, 周三
请求线路:(通用线路)http://api.yescaptcha.365world.com.cn
(特殊线路)http://hk.yescaptcha.365world.com.cn
(无特殊情况建议选择通用线路, 通用线路速度更快。)
请求路径: /v3/recaptcha/create
(这个路径不代表验证码版本,版本区分请看下面的参数)
请求方式: GET
参数名
是否必须
说明
token
请在个人中心获取 (Token)
siteKey
ReCaptcha SiteKey (固定参数)
siteReferer
ReCaptcha Referer (一般也为固定参数)
captchaType
(验证码版本)
ReCaptchaV2(默认) / ReCaptchaV3(
不知道是哪一种看后面的说明
siteAction
ReCaptchaV3 选填 Action动作 默认verify
minScore
ReCaptchaV3 选填 最小分数(0.1-0.9)
一般来说识别会在2分钟内完成,一般为10s~80s秒
建议用户设置查询间隔 3-5s ,一个任务最多可以查询40次。
注意: ReCaptcha 识别成功后有效期约为2分钟 请尽快使用!
服务端口: http://api.yescaptcha.365world.com.cn
请求路径: /v3/recaptcha/status
请求方式: GET
taskId
创建任务获取到的ID
请根据 data 中的 status 判断
status
Working
Success
识别失败 请参考 Reason
参数 captchaType
ReCaptchaV2
验证码类型说明:(点选后,需要选择图片确认==说明这是V2验证码)
参数 captchaType
ReCaptchaV3
验证码类型说明:(不需要任何操作,自动进行验证,仅在右下角有小图标==说明这是V3验证码)
通常 V2 是可以看到的, V3 是隐藏的
用浏览器打开你要识别网址 按F12,打开Network,刷新网页,找到这个请求
带有 render 的是 v3 (参考 ReCaptcha 官方部署文档)
key 和 referer 如红框所示
找不到的话,搜索ancher或者api,看到了吗,右边k=xxxx这个参数就是sitekey
一般来说搜索 grecaptcha 可以找到
Postman demo 可以查看不同语言DEMO(Python/PHP等等)
首先我们已经学会怎么获得基本参数,然后也学会怎么调用接口了(创建任务ID(TaskId),再拿任务ID去获取response)。
不会的话,看一下各种语言的DEMO,如果你使用的是按钮精灵或者易语言,可以搜索一下比如:易语言如何调用resfull api
然后我们应该怎么通过这个该死的验证码呢?
我们要明白,我们这个接口,并不是一个能自动帮你点图片的工具,这是一个模拟谷歌服务器直接给你返回正确的结果(response)的工具,你拿到了这个正确的结果(response),接下来就应该把这个结果提交给你要登陆的网站,告诉它,你已经通过验证了。
那么问题来了,应该如何提交给网站呢?一般有两种情况:
1.我们写的是协议提交(post),也就是post数据包的方式提交给网站,这时候观察一下你正常提交时,浏览器发送的参数名,一般为g-recaptcha-response,如下图所示,把我们正确的结果(response)提交,就能通过验证了。
这是最简单,也是推荐的方式。
2.第二种,我们使用按键精灵,或者Python的selenium自动化工具,在屏幕上点点点操作的方式,这种叫模拟操作,那么这种如何使用正确的结果(response)提交呢,请听:我们正常点击验证码之后,在网页上,一般会有一个地方存放这个结果,这个地方一般是这样的:
这个地方有一个ID叫g-recaptcha-response的textarea,当你点击正确通过验证码之后,谷歌会把正确的结果(response)保存在这里,然后随着表单一起提交。
这时候我们利用的方式就是,把我们通过接口获得的正确的结果(response),写入到这里,然后一起提交(这里我们已经通过接口生成了正确的结果(response),所以不再需要去点验证码了!)
具体怎么操作,可以参见下面的两种整合方式:
一般来说, 我们推荐用户使用协议, 但是模拟依然可以整合我们的API
ReCaptcha 包含两种方式, 一种是非回调, 一种是回调
ReCaptcha 会生成一个 textarea 用来存放 token, 我们可以手动写入
找到 ReCaptcha 所在元素中的参数
- JS render
我们有一种比较懒的方式来获取 Callback Function, 在 React VUE 等情况也可以使用
- 页面上存在多个 ReCaptcha 的时候, 可以是 clients[1], clients[2]...
- 路径不一定固定为 o.o, 最好使用自动查找方式
得到 myCallbackFunction 之后, 我们只需要调用
返回时各种错误代码提示
msg 错误提示内容
Token error
TOKEN错误,请检查TOKEN是否正确
(长度、空格等情况)
Token not found
TOKEN不存在,请检查TOKEN是否正确
(个人中心的TOKEN)
Not enough points
余额不存,请充值
Page Not found
页面不存在,请检查URL路径是否正确
Internal Server Error
服务器出现错误,请联系管理员
Missing required field
缺少必要字段,请检查字段是否完整
(siteReferer、siteKey)
Create Task Failed
任务创建失败(偶尔会出现,不会扣费,请重试)
This task has failed
Taskid已经失败(偶尔会出现,不会扣费,请重试)
Invalid Taskid
TaskId不存在
Token with Taskid not Match
Taskid非本TOKEN帐户创建
Not Exists / Wrong taskId
任务状态异常(极少会出现,不会扣费,请重试)
Server unavailable now
服务器不可用,请联系管理员
Other error
未分类的其他错误,请联系管理员
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK