У меня есть вот такая функция:
def solve_recaptcha():
SOLVERKEY = "solverkey"
BASE_URL = "https://etsy.com"
while True:
try:
if driver.find_element("class name", "g-recaptcha-etsy"):
print("[ ] reCAPTCHA detected")
else:
print("[ ] reCAPTCHA not detected")
return
print("[ ] Starting anticaptcha")
WDW(driver, 10).until(EC.frame_to_be_available_and_switch_to_it(('css selector',"#g-recaptcha-etsy-sign_in-checkbox_difficult > div > div > iframe")))
WDW(driver, 10).until(EC.element_to_be_clickable(('xpath', "//span[@id='recaptcha-anchor']")) )
driver.switch_to.default_content()
data_sitekey = driver.find_element('class name', 'g-recaptcha-etsy').get_attribute('data-sitekey')
solver = recaptchaV2Proxyless()
solver.set_verbose(0)
solver.set_key(SOLVERKEY)
solver.set_website_url(BASE_URL)
solver.set_website_key(data_sitekey)
g_response = solver.solve_and_return_solution()
if g_response != 0: # If answer not 0, success!
print("[ ] g-response SUCCESS")
driver.execute_script('document.getElementById("g-recaptcha-response").innerHTML = "{}";'.format(g_response)) # Sends captcha solution
time.sleep(random.uniform(2.0, 5.0))
print("[ ] Submiting form")
time.sleep(300)
return
else:
print("[ ] Task finished with error "+solver.error_code)
print("[ ] Reporting anticaptcha error via API.")
solver.report_incorrect_image_captcha()
except Exception as err:
print(err)
На стандартном примере google recaptcha demo есть кнопка Отправить, на которую есть пост запрос с проверкой, на моем же примере кнопки этой нет, и капча подтверждена только тогда, когда на ней стоит галочка, тогда сайт пускает меня дальше