recognize_recaptcha_2_with_image($filename,$imageinstructions); - распознать ReCaptcha2 с инструкцией - картинкой. Подробнее можно узнать здесь
Для ее работы используются следующие поля объекта :$this->api_key - API ключ
Функция на вход принимает параметры:
$filename – путь к файлу с капчей $imageinstructions – картинка инструкции (образец), что нужно указать (дорожные знаки, пальмы, подарок, вывеска и т.д.)
Требования к капче и тексту:После отработки функция возвращает результат своей работы в робот :
- Сама капча должна быть либо 300x300px, либо 600x600px, либо 632x632px
- Размер капчи должен быть как есть, на изображения 300х300 мы наложим сетку в 9 квадратов, на изображения 600х600 и 632x632px мы наложим сетку в 16 квадратов
- Капча должна быть меньше 100 Кбайт
- imginstructions должен быть не более 100x100px
- imginstructions должен быть меньше 25Кбайт
Результат распознования – капчу в формате ответа: "OK|click:3/8/9/", где цифры - это номера картинок похожих на заданную или код-строку с ответом об ошибке:
ERROR_KEY_DOES_NOT_EXIST - вы использовали неверный captcha ключ в запросе ERROR_WRONG_ID_FORMAT - некорректный идентификатор капчи, принимаются только цифры ERROR_CAPTCHA_UNSOLVABLE - капчу не смогли разгадать 5 разных работников
Пример использования recognize_recaptcha_2_with_image (Python):
# Additional paths import sys sys.path.insert(0, '../../../Templates PY/') xhe_host = "127.0.0.1:7010" from xweb_human_emulator import * # начало echo("<hr><font color=blue>rucaptcha.xxxxxxxxx</font><hr>") # API ключ rucaptcha.api_key="cdbecaf74aaf1aadafbd97189886ab92" # 1 echo("1. Перейдем на полигон : ") echo(browser.navigate("https://www.google.com/recaptcha/api2/demo"),"<br>") # нжмем я не робот while not div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,0).is_visibled(): sleep(1) check=div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,0).send_mouse_click(4,4) # сохраним кртинку while not image.get_by_src("www.google.com/recaptcha/api2/payload",false,1).is_visibled(): sleep(1) sleep(3) echo(image.screenshot_by_src("test\\tmp.jpeg","www.google.com/recaptcha/api2/payload",false,1)) # конец echo("<hr><br>") # Quit app.quit()