Web / rucaptcha



recognize_recaptcha_2_with_image

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 разных работников

    Пример использования (PHP):
    ===============================================================

    <?php
     
    // подключим объект для управления эмулятором, если еще не подключен
    if (!isset($path))
      $path="../../../Templates/xweb_human_emulator.php";
    require($path);
     
    // начало
    echo "<hr><font color=blue>rucaptcha->".basename (__FILE__)."</font><hr>";
     
    // API ключ
    $rucaptcha->api_key="cdbecaf74aaf1aadafbd97189886ab92";
     
    // 1 
    echo "1. Перейдем на полигон : ";
    echo $browser->navigate("https://www.google.com/recaptcha/api2/demo")."<br>";
     
    // нжмем я не робот
    while (!$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 (!$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();
    ?>

    Пример использования (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.recognize_recaptcha_2_with_image</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()

    Пример использования (C#):
    ===============================================================

     

    Пример использования (JS):
    ===============================================================

    // подключим объект для управления эмулятором, если еще не подключен
    xhe_host="127.0.0.1:7010";
    echo=require("../../../Templates JS/xweb_human_emulator.js");
     
    // начало
    echo("<hr><font color=blue>rucaptcha.recognize_recaptcha_2_with_image</font><hr>");
     
    // API ключ
    rucaptcha.api_key="");
     
    // 1 шаг
    echo("1. Перейдем на полигон : ");
    echo(browser.navigate("https://rucaptcha.com/support/faq/41/")+"<br>");
     
    // 2 шаг
    echo("2. Распознать рекапчу с текстовыми инструкциями используя сервис rucaptcha.com : \n");
     
     
    // 3 шаг
    echo("3. Выведем информацию : ");
    echo(rucaptcha.get_last_capcha_filename()+" ");
    echo(rucaptcha.get_last_capcha_id()+" ");
    echo(rucaptcha.get_last_capcha_result()+"<br>");
     
    // 4 шаг
    echo("4. Зададим парамтеры распозанняи по умолчанию : ");
    echo(rucaptcha.set_default_params();
     
    // конец
    echo("<hr><br>");
     
    // Quit
    app.quit();

    =============================================
    RuCaptcha     Объекты    DOM  System  Web  Window        
    =============================================
    если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум по автоматизации бизнеса
    .