Callback function for invisible Recaptcha is not working

144 Views Asked by At

I am trying to bypass invisible reCaptcha during login (https://www.vseinstrumenti.ru/user/login) and I succeeded until I tryed to bypass it in headless mode. After I failed to solve captcha in headless mode, I can't solve it even in headed mode. I am using seleniumbase's undetected_chromedriver module and getting solution from 2captcha API. After that I'm using following script to find and submit captcha using ___grecaptcha_cfg's callback function. But after submitting captcha is not disappearing like it used to previously (before I tried headless mode). Any advice would be helpful, thanks

document.querySelector('textarea[id^="g-recaptcha-response"]').innerHTML = 'arguments[0]';
const reduceObjectToArray = (obj) => Object.keys(obj).reduce(function (r, k) {
    return r.concat(k, obj[k]);
}, []);
            
for (let i = 0; i < Object.keys(___grecaptcha_cfg.clients).length; i++) {
    const client = ___grecaptcha_cfg.clients[i]
    let result = [];
    result = reduceObjectToArray(client).filter(c => Object.prototype.toString.call(c) === "[object Object]")
                
    result = result.flatMap(r => {
        return reduceObjectToArray(r)
    })
                
    result = result.filter(c => Object.prototype.toString.call(c) === "[object Object]")
                
    const reqObj = result.find( r => r.callback)
    console.log(reqObj.callback)
    try{
        window[reqObj.callback](arguments[0])
    } catch(err) {
        reqObj.callback(arguments[0])
    }
}
0

There are 0 best solutions below