ReCaptcha 回调函数

amacenme1984

New member
我一直在编写一个用于解决Recaptcha的脚本,使用https://2captcha.com/2captcha-api#recaptchav2new_get作为指南。我已经能够:1.从源代码获取Recaptcha站点密钥2.将站点密钥发送到DeathByCaptcha服务3.轮询DBC,直到我收到一个包含Recaptcha密钥的JSON对象4.在“g-recaptcha-response”中设置键值对我卡在了最后一步——提交Recaptcha。我测试这个站点没有提交按钮,如下所示:文档说在某些站点中使用“回调函数”代替提交按钮:在浏览器控制台中运行___grecaptcha_cfg.clients[0],我得到这个:但当我尝试运行___grecaptcha_cfg.clients[0].aa.l.callback时,我得到这个:那么…嗯…接下来该怎么办?哈哈
 

balkawaral1979

New member
在Python请求中,有一个隐藏的POST请求用于提交验证码。我没有意识到这一点,以为需要填写密钥值的文本框,而这是使用请求无法完成的,因此我被卡住了。但是,谷歌只需要完成以下两种情况之一:填写文本框的键值,然后“提交”(对于普通人来说是由JavaScript完成的流程),或者调用必要参数的POST请求。而该请求的参数包括键值和一些其他特定于网站的参数。我没有使用过AutoIT,所以我无法告诉你这是否有帮助,抱歉。
 

hokneventre1979

New member
在AutoIT中,有没有一种在浏览器控制台中执行JavaScript/脚本的方法?如果有,我认为我可以为您提供一个解决方案。
 
document.getElementById("g-recaptcha-response").innerHTML="token"; 我在我的情况下使用了这个,但是我有一个提交按钮,所以它没有起作用,因为还需要按下提交按钮。也许在没有提交按钮的情况下,这个可以起作用吗?或者,手工解决验证码时,是否有其他的HTML值会改变?如果我是你,如果上述脚本不起作用,我会手动解决验证码并观察与验证码相关的HTML元素的任何更改,然后尝试使用类似的脚本来看看改变它们是否会有什么作用。
 

blutsicamen1987

New member
我也试过innerHTML这个方法。我将你发布的代码片段注入到控制台中。我没有看到提交按钮——根据2Captcha API文档,有些网站没有提交按钮,对于这些网站,需要使用“回调函数”。是的,我想我得手动解决它,看看是否有HTML更改。感谢你的帮助。
 
真的很抱歉,这也让我感到沮丧。有一个元素似乎我们两个都不理解,但是验证码服务的开发人员理解。它是可解决的。请随时告诉我最新消息。
 

ratamotha1986

New member
嗨,好久不用DBC api了,但我会关注这个讨论并希望能够帮忙。尝试在设定了g-recaptcha-response之后,使用JavaScript提交完整表单是否有效?document.getElementById('theForm').submit();
 
验证码回调函数并非总是相同的。您需要为您的情况找到正确的参数:在您的目标页面上,进入控制台并输入:___grecaptcha_cfg.clients。您将找到不同的参数,然后您必须选择正确的参数(带有回调函数)。在我的例子中,它在___grecaptcha_cfg.clients[0]['O']['O'].callback(YOURRESPONSE)中。要注意,它可能会改变!!
 
顶部