【ZP项目验证码研究】GEEtest V4 验证码研究—-未完待续
前段时间接到一个ZP单子。脚本本身不难却被验证码难住了。验证码就是标题提到的GEEtest V4。没错好多验证码平台写的也是可以打码。但是GEEtest V4 有好几个版本。我遇到的情况是:
另外V4还有其他三个版本,分别是:
我谷歌了一圈也没找到解决这个验证码的办法,大多数脚本或者打码平台都只是滑块验证码。下面是 https://2captcha.com/api-docs文档,但是也只是能V4解决滑块验证码。看到这个文档我就想抱着试试的心态,万一支持我这种V4验证码呢。下面是我测试的过程:
首先、看v4文档。这种验证码模块只要不是ZP自带的都需要自己去研究开发,比较费时间。研究的方向就是用ZP的GET和POST来解决。
其次、打开有验证码的页面,然后从源码找到V4文档所需的captcha_id,这个用正则从网页源码里提取。比如我这个:
通过正则就能提取到。这里用到ZP里的正则测试器:
然后在ZP里:
保存到变量captcha_id
接着用ZP get:
请求网址示例(代理用激活的):
https://2captcha.com/in.php?key=1abc234de56fab7c89012d34e56fa7b8&method=geetest_v4&captcha_id=42977dc9-a215-4b09-aa14-945ef310d829&&pageurl=http://2captcha.com/demo/geetest-v4
key:就是2captcha.com
后台的api key。
captcha_id:就是我们上面的变量captcha_id
pageurl:就是当前页面的URL。
pageurl这里可以用ZP自带的环境变量:
最后我们的连接是:https://2captcha.com/in.php?key=key&method=geetest_v4&captcha_id={-Variable.captcha_id-}&&pageurl={-Page.Url-}
放入ZP get 模块请求一下,结果保存到变量getresult,代理选择激活项目代理:
单步F10运行,得到结果:然后正则一下,得到OK|后面的内容,保存为GETid变量种:
大概等15-30秒之后就再次用GET获取服务器返回数据了。
15-20秒后发送GET请求获取结果:
下面是get需要的数据。
GET https://2captcha.com/res.php?key=YOUR_API_KEY&action=get&id=2122988149
GET后得到如下结果JS代码:
OK|{“captcha_id”:”cb65d3d5ede66d312d2f7750f485a999″,”lot_number”:”15740fa54e3a4546935e52fe52c49a68″,”pass_token”:”1b85d2912042b1e2f84b2dcfabe5f8e21a942c19fdb0861c9ad117dea6f492a8″,”gen_time”:”1698564675″,”captcha_output”:”ZMmIgzPS4yTLnsohcmYt5z9cOV0S7vL7j0RMpBMlrP5rlu44-6XNWXCfGpcJfL7R2vABjPAgumtT8_Y2MkNKHNczkk63bDg78Jo0MDtl9A02mZItFxPRwL88U9CQ1pv84K-hce0dmysXz5D6nGRiObemdtcPKv-ZlxOzX_JEtGIPWtB6zoebL76FNs8srxJI5U9ZA-BvxxiK0rGHIvhEGUknXlM2NHKWv3AHAwgCKPexK6QSOCbQwE-HP37DVPre4gHsIbr4RdOoiW1VInK3YEB7SqPheRPrDOS1zq54STxrsXJIiY0gOwzlHjmYWyKbgxLBjw30Z8uDh5kR8wotnQ==”}
然后往哪里填写,暂时没找到地方和解决方案,官方给的教程也是模模糊糊:
- 使用目标网站上返回的值,就像手动解决验证码后使用它们一样。可以有一个带有一组隐藏输入或 JavaScript 回调的表单。或者您可以简单地使用所需数据构建 HTTP 请求。
- 单击“检查”按钮提交表格。
我找的教程也是之前的。对我我现在的验证码问题丝毫没有帮助:
下面是2captcha
官方教程: