Recaptcha 2

Recaptcha 2 На днях, занимаясь очередным внедрением reCaptcha для одного из проектов, столкнувшись с небольшой проблемой в области отображения нескольких защитных изображений на 1 странице с помощью AJAX я в очередной раз пошел на страницу официальной документации «reCaptcha» и обнаружил, что документация существенно отличается от предыдущих версий.
Воспользовавшись поиском стало ясным — в мир вышла «recaptcha 2.0» с обновленным API и визуализацией а так же рядом других «плюшек», о чем я и расскажу в данной статье.

В Новой версии reCaptcha, или как ее теперь следует называть «gCaptcha» существенным изменениям подверглись визуальный интерфейс капчи для веб-приложений и алгоритм взаимодействия с сервисом валидации (API). Сами «защитные изображения» существенно (визуально) не изменились.
В данный момент так же нет (мне не удалось найти) информации об «официальном релизе» reCaptcha2, а на посадочной страничке проекта весит гордый "coming soon".

Новый интерфейс reCaptcha 2


Одним из существенных изменений, на который мы наталкиваемся практически сразу при ознакомлении с reCaptcha2 является новый интерфейс оформления защитного изображения.
Интерфейс был существенно переработан — теперь он отображается в виде небольшого виджета с импровизируемым чекбоксом «я не робот», при клике на котором пользователю предлагается разгадать изображение.

При успешном разгадывании изображения капча примет следующий вид:

В случае неудачного разгадывания изображения капча уведомит об этом, что является существенным улучшением — пользователю не нужно будет перезагружать страницу несколько раз. Капча так же уведомит о неудаче в случае истекания время сессии.
Посмотреть reCaptcha2 можно в живую на демо-страничке от гугла.

Новый API

Вместе с новым интерфейсом reCaptcha2 для взаимодействия используется и новый алгоритм внедрения и взаимодействия с удаленным API.
Ключи для использования reCaptcha2 на ваших сайтах можно получить в новом интерфейсе (требуется авторизация google):

Все так же используется алгоритм приватного и публичного ключа, которые в данной версии названы как «секретный ключ» и «ключ» соответственно. Существенным изменением является то, что ключ в reCaptcha2 не может быть глобальным — теперь каждый домен, на котором планируется использовать reCaptcha2 должен быть указан в настройках. Для localhost и 127.0.0.1 капча будет работать без указания домена.
С новым api внедрить капчу в тело страницы — дело 2х строк кода(*пример простого внедрения):

<script src="https://www.google.com/recaptcha/api.js" async defer></script> <div class="g-recaptcha" data-sitekey="your_site_key"></div>     

Несмотря на это, api обладает достаточно большим набором функций для различных вариаций выгрузки reCaptcha2 и настройки ее визуализации(отображение по callback’у, стилизация и другие).
Изменился и API для валидации взаимодействия пользователя с капчей. Сразу хочу отметить, что ранее используемый стандартный post field — recaptcha_response_field теперь именуется как g-recaptcha-response. Сам API теперь возвращает результат проверки в формате JSON, что собственно не может не радовать. Запрос на валидацию при submit`e формы с капчей должен выглядеть следующим образом:
www.google.com/recaptcha/api/siteverify?secret=your_secret&response=response_string&remoteip=user_ip_address

где соответственно secret — приватный ключ (секретный ключ), response — результат ответа пользователя (post.g-recaptcha-response), remoteip — ип-адрес пользователя (не обязателен). Результат обработки на данном URL будет возвращен в JSON формате:

{  "success": true|false,  "error-codes": [...] }     

в результате чего, валидация капчи будет выполнена в 1 строку (json_decode; object->success).
Документация: смотреть на google

habr.com

reCAPTCHA сейчас, это очень важный инструмент для того, чтобы отделить мух от котлет, ботов от людей. Гугл сильно причесал reCAPTCHA 2.0, и теперь вам не надо пол часа вбивать эти нудные символы, как это было раньше на первой версии. Тыкнул по флажку и готово.

Но в документации это полезной штуки, не показано как ее валидировать через PHP и JavaScript.

Итак, сперва првоерим капчу на заполненность через JavaScript, чтобы дать пользователю возможность не отправлять по несколько раз форму, если он еще не заполнил капчу. К примеру у нас есть такая форма.

<form id="sendForm" action="mail.php" method="post" enctype="multipart/form-data">  	<input required name="sender_name" placeholder="Ваше имя..."/>  	<input required name="sender_email" placeholder="Ваш email..."/>  	<textarea required placeholder="Ваше сообщение" name="sender_message">   <div class="captcha_wrapper">  	 <script src='https://www.google.com/recaptcha/api.js'></script>   <div class="g-recaptcha" data-sitekey="YOUR__PUBLIC_KEY"></div>  	</div>  	<button type="submit" id="send_message">Отправить</button>  </form>

YOUR_PUBLIC_KEY
вы возьмете отсюда https://www.google.com/recaptcha/intro/index.html, там же будет и YOUR_SECRET_KEY упомянутый ниже.

В ней будет выведена recapcha, но при нажатии на кнопку отправки, браузер попросит заполнить все поля, так как у них стоит атрибут required, но рекапча отправится не заполненной. Мы разумеется проверим ее на сервере, но и до этого лучше дать возможность юзеру не делать лишних движений, а сразу дать ему понять что он что-то забыл. Делается это при помощи метода grecaptcha.getResponse()

<script>  document.getElementById('sendForm').onsubmit = function () {   if (!grecaptcha.getResponse()) {   alert('Вы не заполнили поле Я не робот!');   return false; // возвращаем false и предотвращаем отправку формы   }  }  </script>

Теперь форма не отправится, пока пользователь не заполнит капчу.

Чтобы вы понимали, мы сейчас не проверили капчу а всего лишь слегка улучшили интерфейс для конечного пользователя. Это надо понимать. Любой бот легко отправит эту форму на сервер, и валидировать ее нужно именно там.

Првоеряем reCAPTCHA через PHP

При отправки формы, на сервер, помимо прочего, уходит поле “g-recaptcha-response”. Его и нужно проверить. Никаких дополнительных библиотек подключать не будем. Только голый php:


<?php  	$response = $_POST["g-recaptcha-response"];  	$url = 'https://www.google.com/recaptcha/api/siteverify';  	$data = [  		'secret' => 'YOUR_SECRET',  		'response' => $_POST["g-recaptcha-response"]  	];  	$options = [  		'http' => [  			'method' => 'POST',  			'content' => http_build_query($data)  		]  	];  	$context = stream_context_create($options);  	$verify = file_get_contents($url, false, $context);  	$captcha_success=json_decode($verify);  	if ($captcha_success->success==false) {  		echo "Ты робот! Не люблю тебя!";  	} else if ($captcha_success->success==true) {   // сохраняем данные, отправляем письма, делаем другую работу. Пользователь не робот  	}    

xdan.ru

  • 30 нояб -0001
  • Автор:
  • Опубликовано в: Статьи
  • Сообщение: Оставить комментарий

Как обновить recaptcha v2 на новую recaptcha v3

 

Каждый владелец веб-ресурса сталкивается с такой проблемой как спам и бороться с этим можно с помощью CAPTCHA, который используется для того, чтобы отличить машину от человека методом определения цифр на картинке, отдельных фрагментов на изображении и другое. С это задачей легкостью справится даже ребенок, она достаточно сложная для машины. В сегодняшней статье мы рассмотрим, как установить и настроить ReCaptcha v2.0, более новую и улучшенную версию, с усовершенствованным дизайном и интерфейсом. После обновления программы, значительно упростился процесс серверной проверки.


 

Для начала необходимо получить ключи от Google, получить его можно перейдя по ссылке. Обязательным условием для поучения ключа является наличие учетной записи в Google. После перехода по ссылке необходимо добавить ваш сайт либо несколько сайтов в предложенную форму.

 

Как установить ReCaptcha v2.0

 

В предложенную форму вводим наименование сайта, владельца (почтовый ящик) и домен. Без использования «http://» и «www» и нажимаем кнопку «Регистрация», после чего получаем 2 ключа, один из них секретный, далее приступаем к установке CAPTCHA на сайте.

Как установить ReCaptcha v2.0

 

Для того чтобы установить CAPTCHA необходимо ввести CAPTCHA в предложенную форму следуя достаточно понятной инструкции Google. В коде HTML необходимо использовать первый ключ, API можете подключить в любом месте, можно сразу после формы, не обязательно должно быть в HEAD

 

<form method="post">   <input type="text" name="email">   <input type="text" name="url">     <div class="g-recaptcha" data-sitekey="ВАШ_КЛЮЧ"></div>     <input type="submint" name="sub_but">  </form>    <script src='https://www.google.com/recaptcha/api.js'></script>


 

Для интегрирования с сервером необходимо добавить код проверки ReCaptcha. Код на php прописываем, там, где будет проходить проверка данных у сайта.

 

//Получаем пост от recaptcha  $recaptcha = $_POST['g-recaptcha-response'];    //Сразу проверяем, что он не пустой  if(!empty($recaptcha)) {   //Получаем HTTP от recaptcha   $recaptcha = $_REQUEST['g-recaptcha-response'];   //Сюда пишем СЕКРЕТНЫЙ КЛЮЧ, который нам присвоил гугл   $secret = 'ВАШ_СЕКРЕТНЫЙ_КЛЮЧ';   //Формируем utl адрес для запроса на сервер гугла   $url = "https://www.google.com/recaptcha/api/siteverify?secret=".$secret ."&response=".$recaptcha."&remoteip=".$_SERVER['REMOTE_ADDR'];     //Инициализация и настройка запроса   $curl = curl_init();   curl_setopt($curl, CURLOPT_URL, $url);   curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);   curl_setopt($curl, CURLOPT_TIMEOUT, 10);   curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.16) Gecko/20110319 Fi.    
тираем и так далее } } else { //Капча не введена, сообщаем пользователю, все закрываем стираем и так далее }

 

После совершенных манипуляций количество спама должно значительно сократится. Данная версия CAPTCHA дает проверочное задание только тогда, если не может точно определить человек это или бот. Задание откроется в виде небольшого виджета и не потребует перезагрузки страницы.

bitoo.ru

I tried using soooooo many different tutorials but only yours worked! Thank you very much!

And for those asking, if you want to have the form send you the info via email, here is an example of the code:

<?php
$sender_name=stripslashes($_POST["fullname"]);
$sender_email=stripslashes($_POST["email"]);
$sender_message=stripslashes($_POST["message"]);
$secret="YOUR-SECRET-KEY";
$response=$_POST["g-recaptcha-response"];
$verify=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret={$secret}&response={$response}");
$captcha_success=json_decode($verify);


$subject="Important Message".$_POST['subject'];
$headers= "From: ".$_POST['email']."n";
$headers.='Content-type: text/html; charset=iso-8859-1';
$headers1="From: "."info@YOUR-EMAIL.com"."n";
$headers1.='Content-type: text/html; charset=iso-8859-1';
$success = mail("info@YOUR-EMAIL.com", $subject,"

Important Message

You’ve received a message from YOUR website.
Message:
“.$_POST[‘message’].”
Please Contact: 
“.$_POST[‘fullname’].”
Phone:
“.$_POST[‘phone’].”
Email:
“.$_POST[’email’].”

” , $headers);@mail($_POST[’email’],’YOUR-NAME’,$body1,$headers1);
if ($captcha_success->success==false) {
echo “You are a bot! Go away!”;
}
else if ($captcha_success->success==true) {
print “”;

}
?>
_______

Note that you need to create a file called “contact.success.htm” to display after the form is submitted.
Thanks again!!!

www.kaplankomputing.com

Как работает reCAPTCHA?


Пример работы reCAPTCHA

Пользователь жмет на кнопку «Я не робот», если анализ Google уверен, что вы человек, то все хорошо, иначе появится вторая проверка, например ввод слова или выбор нескольких картинок одной тематики из массива изображений, пример:

Пример дополнительной проверки reCAPTCHA

или

Recaptcha 2

Так же на этот вопрос есть отличный ответ в виде видео от Google:

Удобно? Тогда приступим к интеграции на сайт.

Добавляем reCAPTCHA на сайт

Добавляем reCAPTCHA API key

Для начала необходимо добавить reCAPTCHA API key, для этого перейдите по ссылке: https://www.google.com/recaptcha/admin, и заполните поля: метка (1), домены (где будет использоваться reCAPTCHA) (2) и жмем на кнопку «Register» (3).

Форма добавления reCAPTCHA API key

После чего получим данные для добавления reCAPTCHA на сайт:

Пример данных reCAPTCHA API key

Добавляем reCAPTCHA в форму

На страницу добавляем js скрипт из поля 3, скрипт можно добавить перед закрывающемся тегом </head> или </body>, далее в форму и добавляем блок с капчей из поля 4 (поля из второго скриншота):

<!DOCTYPE html>  <html lang="ru">    <head>   <meta charset="UTF-8">   <title>Добавляем reCAPTCHA от Google на сайт</title>  </head>    <body>     <form method="post">   <label for="name">Имя:</label>   <input name="name" required><br />   <label for="email">E-mail:</label>   <input name="email" type="email" required><br />   <div class="g-recaptcha" data-sitekey="6LeKaREUAAAAALB6Sgjp5XqHq0Kb_aLEn_KORz6u"></div>   <input type="submit" value="Отправить" />   </form>     <script src='https://www.google.com/recaptcha/api.js'></script>   </body>    </html>  

Где data-sitekey — значение из поля 1 (второй скриншот).

Верификация reCAPTCHA

После того как добавили блок reCAPTCHA в форму нам будет приходить постом 3 значения: name, email и g-recaptcha-response. Перед обработкой полученных данных необходимо валидировать name и email, а также отправить значение g-recaptcha-response Google для проверки.

Пропустим валидацию name и email и перейдем к g-recaptcha-response. Разработчики Google ReCAPTCHA уже сделали всю работу за нас по верификации капчи, поэтому переходим к проекту ReCAPTCHA на Github и скопируем файл recaptchalib.php: https://github.com/google/recaptcha/blob/1.0.0/php/recaptchalib.php.

Затем положим его в удобное место (я положу в корень) и подключаем перед верификацией капчи:

<?php  require_once "recaptchalib.php";  

Класс ReCaptchaResponse отправит содержимое g-recaptcha-response и секретный ключ в Google, затем получит ответ и проверит, был ли он успешен:

<?php  require_once "recaptchalib.php";    //секретный ключ  $secret = "6LeKaREUAAAAAGgPekvD1djRejSXufWqghauFg7-";  //ответ  $response = null;  //проверка секретного ключа  $reCaptcha = new ReCaptcha($secret);    if (!empty($_POST)) {     if ($_POST["g-recaptcha-response"]) {   $response = $reCaptcha->verifyResponse(   $_SERVER["REMOTE_ADDR"],   $_POST["g-recaptcha-response"]   );   }     if ($response != null && $response->success) {   echo "Все хорошо.";   } else {   echo "Вы точно человек?";   }    }  

Итог

Теперь соберем все вместе:

<?php  require_once "recaptchalib.php";    ?>  <!DOCTYPE html>  <html lang="ru">  <head>   <meta charset="UTF-8">   <title>Добавляем reCAPTCHA от Google на сайт</title>  </head>  <body>  <?php  //секретный ключ  $secret = "6LeKaREUAAAAAGgPekvD1djRejSXufWqghauFg7-";  //ответ  $response = null;  //проверка секретного ключа  $reCaptcha = new ReCaptcha($secret);    if (!empty($_POST)) {     //Валидация $_POST['name'] и $_POST['email']   if ($_POST["g-recaptcha-response"]) {   $response = $reCaptcha->verifyResponse(   $_SERVER["REMOTE_ADDR"],   $_POST["g-recaptcha-response"]   );   }     if ($response != null && $response->success) {   echo "Все хорошо.";   } else {   echo "Вы точно человек?";   }    }  ?>    <form method="post">   <label for="name">Имя:</label>   <input name="name" required><br />   <label for="email">E-mail:</label>   <input name="email" type="email" required><br />   <div class="g-recaptcha" data-sitekey="6LeKaREUAAAAALB6Sgjp5XqHq0Kb_aLEn_KORz6u"></div>   <input type="submit" value="Отправить" />  </form>    <script src='https://www.google.com/recaptcha/api.js'></script>    </body>  </html>  

Внешний вид:

Recaptcha 2

Дополнительно

Тема

Сменить цвет reCAPTCHA можно с помощью атрибута data-theme, который может принимать значение dark и light (по умолчанию):

<div class="g-recaptcha" data-sitekey="6LeKaREUAAAAALB6Sgjp5XqHq0Kb_aLEn_KORz6u" data-theme="dark"></div>  

Recaptcha 2

<div class="g-recaptcha" data-sitekey="6LeKaREUAAAAALB6Sgjp5XqHq0Kb_aLEn_KORz6u" data-theme="light"></div>  

Recaptcha 2

Язык

По умолчанию язык в reCAPTCHA определяется по языку браузера, но можно указать язык явно, например, украинский:

<script src='https://www.google.com/recaptcha/api.js?hl=uk'></script>  

задать русский язык

<script src='https://www.google.com/recaptcha/api.js?hl=ru'></script>  

Дополнительные настройки: https://developers.google.com/recaptcha/docs/display#config

кодер.укр

Стандартная каптча, с вводом непонятных символов это уже «прошлый век». Чаще «каптчи» ставят на различные формы. А эти данные очень важны для владельца сайта, т.к. это может быть заказ услуги, обратная связь, регистрация в партнерском разделе и т.п. Важно что бы защита от ботов не стала проблемой для ваших посетителей.

Что бы установить Google recaptcha 2 на сайт необходимо:

  • Зарегистрировать сайт на https://www.google.com/recaptcha/admin и получить секретные ключи и инструкцию по установке
  • Действовать согласно инструкции.  🙂 Шучу. Подключаем js библиотеку в header.php или в component_epilog.php компонента с формой.
    <?BitrixMainPageAsset::getInstance()->addJs('//www.google.com/recaptcha/api.js');?> 
  • В настройках компонента формы отключите стандартную каптчу.
  • В шаблоне формы находим место подключения стандартной каптчи и меняем на предложенный по инструкции код. Параметр data-sitekey у вас будет свой.
    <div class="g-recaptcha" data-sitekey="6Leh4iETAAAAAM6ybuqexxuK0Sc4Q4MBYK3xO3JZ"></div>
  • Если ваша форма загружается с помощью ajax, просто подключите скрипт api.js в форме, а не в шаблоне сайта.
    <script src="https://www.google.com/recaptcha/api.js" async defer></script>
  • Для изменения размера каптчи можно использовать параметр «data-size», либо с помощью css
    <div class="g-recaptcha" data-size="compact" ...    .g-recaptcha {  	transform:scale(0.77); 	transform-origin:0 0;  }
  • В файле component_epilog.php шаблона формы получаем ответ от google и сохраняем в сессию пользователя
    <?  	$_SESSION['g-recaptcha-response'] = ''; 	if ($_POST['g-recaptcha-response']) { 		$_SESSION['g-recaptcha-response'] = htmlspecialcharsbx(substr($_POST['g-recaptcha-response'], 0, 3000)); 	}  ?>
  • Добавляем обработчик добавления элементов в init.php и смотрим прошел ли пользователь проверку. Не забудьте заменить секретный ключ в POST параметрах и ID инфоблока.
    <? 	AddEventHandler("iblock", "OnBeforeIBlockElementAdd", "checkGoogleCaptcha");  	function checkGoogleCaptcha(&$arFields) { 		if ($arFields['IBLOCK_ID'] == 6 && $_REQUEST['iblock_submit']) { 			global $APPLICATION; 			if ($_SESSION['g-recaptcha-response']) { 				$httpClient = new BitrixMainWebHttpClient; 			 	$result = $httpClient->post( 			 	'https://www.google.com/recaptcha/api/siteverify', 			 	array( 			 	'secret' => '6Leh4iETAAAAAO7ynh2PqbbB777777noIG0tc', 			 	'response' => $_REQUEST['g-recaptcha-response'], 			 	'remoteip' => $_SERVER['HTTP_X_REAL_IP'] 			 	) 				); 				$result = json_decode($result, true); 				if ($result['success'] !== true) { 					$APPLICATION->throwException("Вы не прошли проверку подтверждения личности"); 					return false; 				} 			} else { 				$APPLICATION->throwException("Вы не прошли проверку подтверждения личности"); 				return false; 			} 		} 	} ?>
  • Если форма загружается ajax`ом не забудьте обновить каптчу с помощью js-метода grecaptcha.reset();

blog.budagov.ru

ReCaptcha 2.0 (выберите изображения похожие на)

Для решения рекапчи, где нужно выбирать определённые квадраты, мы ввели новые параметры. Общая схема решения рекапчи:
1) Вы ставите галочку
2) Получаете изображение + инструкцию
3) Необязательно: определяете количество столбцов и строк
4) Отправляете нам изображение + инструкцию (оригинальное изображение, без сетки и синего блока) + количество столбцовстрок
5) Получаете от нас ID капчи
6) Если Вы не прислали количество столбцовстрок, то мы смотрим размер изображение. Если оно 300x300px, то кладём на него сетку 3×3, если другой размер — кладём сетку 4×4
7) Через 5 секунд обращаетесь за ответом на капчу
8) Мы предоставляем номера клеток, которые нужно нажать для прохождения капчи
9) Кликаете по указанным клеткам.
Формат ответа:
OK|click:3/8/9/
Стоимость 1000 распознаний данной капчи — 70 рублей.
Картинки нумеруются начиная с 1, слева направо, сверху вниз.

Параметр Пояснение
recaptcha=1 Признак того, что данная картинка должна обработаться как рекапча. Т.е. наложится сетка 3х3 или 4х4 и работник будет искать нужные квадраты
textinstructions=%TEXT% Текст того, что нужно выбрать на картинке в кодировке UTF-8
Данный параметр не обязателен, если отправляется imginstructions
imginstructions=img "img" картинка инструкции. Её можно отправить multipart и base64.
Данный параметр не обязателен, если отправляется textinstructions
recaptchacols=3
recaptcharows=3
Сколько колонок (column) и сколько строк(row) в присланном изображении. Если эти параметры не присылаются, мы самостоятельно накладываем сетку на картинку, что может быть неверным в некоторых случаях.
can_no_answer=1 Отправляйте этот параметр, только если есть вероятность, что в предоставленных изображениях нет ни одного подходящего.
При отправке данного параметра у работников появится кнопка «нет подходящих изображений», когда они будут жать её, Вы получите ответ No_matching_images

Ограничения на recaptcha=1:
1) Каптча должна быть не более 100Кбайт
2) imginstructions должна быть не более 25Кбайт
3) imginstructions должна быть не более 100х100px
4) textinstructions не более 140 символов

Обратите внимание, что рекапчи бывают не только 3 на 3 квадрата, но попадаются и 4 на 4 квадрата и 4 на 2 квадрата. Что бы понять какую именно картинку Вы шлёте, мы смотрим размер в px картинки. Если она 300x300px, то мы накладываем на эту картинку сетку 3х3. Если размер другой — накладываем сетку 4х4. Поэтому не надо склеивать изображение с чем-либо. Если Вы приклеете к изображению синий текстовый блок, то мы неверно наложим сетку на картинку и Вы получите неверный ответ.

Обратите внимание, что необходимо засылать саму картинку рекапчи, а не делать её скриншот.

мануал для полного прохождения recaptcha v2 на java + selenium (на странице читайте второй способ)

 

Распознание любой ClickCaptcha (в том числе и ReCaptcha 2.0)

Общая схема взаимодействия:
1) Вы присылаете картинку (+ можно прислать текст до 140 символов)
2) Работники кликают в определённые точки
3) Мы возвращаем Вам координаты точек, куда кликнул работник. Точка x=0, y=0 соответсвует верхнему левому углу

Формат ответа сервера на такую капчу:
OK|coordinate:x=39,y=59;x=252,y=72
Стоимость 1000 распознаний данной капчи — 70 рублей.

Параметр Пояснение
coordinatescaptcha=1 Признак того, что это кликовая капча. Работник не сможет вводить ответ с клавиатуры, ему нужно будет кликнуть в нужные места на картинке.
textinstructions=%TEXT% Текст того, что нужно выбрать на картинке в кодировке UTF-8
Данный параметр не обязателен, если по картинке понятно куда нужно кликнуть — можно не присылать

RotateCaptcha (FunCaptcha и другие капчи, где нужно крутить картинку)

Общая схема взаимодействия:
1)Вы присылаете одну или несколько картинок
2)Вы присылаете на какой угол нужно поворачивать изображение за один шаг (не обязательный параметр)
3)Мы даём работнику все картинки, что Вы прислали. Рядом с каждой картинкой — стрелочки, кликая по которым картинка поворачивается на заданный Вами угол
4)Мы возвращаем Вам угол, на который нужно повернуть изображение

Формат ответа сервера на такую капчу, на 3 присланных картинки:
OK|40|200|-120
Отрицательное значение: картинку нужно повернуть против часовой стрелки на указанный угол
Положительное значение: картинку нужно повернуть по часовой стрелке Стоимость 1000 повёрнутых изображений — 35 рублей.

Параметр Пояснение
method=rotatecaptcha Признак того, что это капча, которую нужно крутить. Работник не сможет вводить ответ с клавиатуры, ему нужно будет кликать по стрелкам для вращения изображения.
angle=45 угол, на который поворачиватся изображение при одном клике на стрелку. Если параметр не задан, то угол по умолчанию = 40 градусам, как у FunCaptcha
file_1, file_2, file_3 Изображения, которые будут крутить работники сервиса

пример загрузки rotatecaptcha:

<form method="post" action="http://rucaptcha.com/in.php" enctype="multipart/form-data">

KEY:<br>
<input  name="key" value="YOURKEY"><br>
Type<br>
<input  name="method" value="rotatecaptcha"><br>
Angle<br>
<input  name="angle" value="40"><br>

Files:<br>
<input type="file" name="file_1"><br>
<input type="file" name="file_2"><br>
<input type="file" name="file_3"><br>

Upload:<br>
<input type="submit" value="Upload and get ID">
</form>

Audio Recaptcha v2 + audio SolveMedia

ReCaptcha и SolveMedia имеют функионал аудио-капчи. Когда Вам проговаривается некоторое сообщение и вы должны ввести данные, которые были произнесены.
Сервис антикаптчи RuCaptcha.com решает в автоматическом режиме такие аудиокапчи. Вам нужно лишь прислать нам mp3 файл и указать тип капчи. А через несколько секунд Вы получите расшифровку этого аудио-файла.

Параметр Пояснение
recaptchavoice=1 Признак того, что Вы прислали .mp3 файл от ReCaptcha
solveaudio=1 Признак того, что Вы прислали .mp3 файл от Solve Media.

Особенности:
1) Распознание происходит алгоритмически. Распознаёт робот, а не живые работники
2) 1000 распознаний стоит 70 рублей
3) В данный момент reportbad на аудиокапчи не принимается, в будущем возможны изменения
4) Если Google заблокировал Ваш IP и отдаёт Вам аудиофайл в котором женский голос произносит «We’re sorry, but your computer or network may be sending automated queries. To protect our users, we can’t process your request right now. For more details visit www.google.com/recaptcha/securityhelp», то мы такую капчу не примем и денег за неё не спишем. Вы получите ошибку ERROR_YOUR_IP_IS_BANNED_BY_GOOGLE

пример загрузки voice-captcha от ReCaptcha на PHP:

<form method="post" action="http://rucaptcha.com/in.php" enctype="multipart/form-data">

KEY:<br>
<input  name="key" value="YOURKEY"><br>
Type<br>
<input  name="recaptchavoice" value="1"><br>

Files:<br>
<input type="file" name="file"><br>

Upload:<br>
<input type="submit" value="Upload and get ID">
</form>

 

 

 

 

 

 

rucaptcha.com

ReCaptchaGnizer.xmlz работает с версиями ZennoPoster: 5.9.5.1 — (до последней актуальной)
Автосабмит (ReCaptchaGnizer_autosubmit.xmlz) работает на ZennoPoster начиная с версии: 5.11.0.0!

Актуальная стоимость решения рекапчи:

  • RuCaptcha с прокси (и без них): 160 руб. за 1 000 рекапч (16 копеек за 1 рекапчу)
  • Anti-Captcha без прокси: $2.2 за 1 000 рекапч (0,22 цента за 1 рекапчу)
  • Anti-Captcha с прокси: $2 за 1 000 рекапч (0,2 цента за 1 рекапчу)

Как использовать?

Как протестировать AUTOSUBMIT (отправку рекапчи в форме без кнопки "Отправить")?

Как решать Invisible reCAPTCHA?

Как протестировать БРАУЗЕРНЫЙ шаблон?

Как протестировать GET/POST шаблон?

История версий

Как настроить отправку только на RuCaptcha или только на AntiGate(Anti-Captcha)?

Работа с автосабмитом (ReCaptchaGnizer_autosubmit.xmlz)

Решение через прокси

Рекапча, подгружаемая через JavaScript

Преимущества (фичи) шаблона

Ошибка: Что-то пошло не так… / Ошибка ProjectInProject / Неактивное оборудование

Как быть, если вываливаются ошибки?
"Что-то пошло не так… Смотри описание выше в логе" или "Выполнение действия ProjectInProject Ошибка при обработке".

Такая ситуация на 99% связана с тем, что у вас несколько устройств, где установлен ZP. Обычно такая ошибка вываливается, если вы тестируете шаблон на локальном компьютере и у вас в личном кабинете (вкладка "Оборудование") локальный компьютер — это НЕ активное оборудование. А активным оборудованием у вас является, например, сервер.

Это связано с тем, что шаблон закрытый и там выданы права только на выполнение. А по словам разработчиков: "ProjectMaker — нужен только для отладки шаблонов, но никак не для выполнения. Если нужно выполнять шаблон — это нужно делать в ZennoPoster". Меня и самого такой ответ удивляет, т.к. на странице покупки ZP отдельным пунктом прописано:
Отчасти я их понимаю: они не хотят, чтобы их программой пользовались одновременно на нескольких компьютерах, но почему на НЕ активном оборудовании в закрытых шаблонах с правами "только выполнение" вываливается такая ошибка — не ясно. Можно было бы и что-нибудь поинформативнее написать.

Решение данной проблемы, к сожалению, только одно: тестируйте шаблон на активном оборудовании.
Всё равно вы его именно там и будете дальше использовать.

Распознавание капчи через GET/POST

Эксклюзивное размещение в вашем ПЛАТНОМ проекте

Использование в ZennoBox

Огромная просьба ко всем, кто словил какой-то баг/ошибку:

  1. Скачайте последнюю версию шаблона (она всегда ниже по ссылке)
  2. Включите логирование через IN_debug
  3. Откройте окно лога в ProjectMaker, проверьте что там будет написано. В 99% случаев там будет нормальное описание почему что-то пошло не так
  4. Если не можете прикрутить ReCaptchaGnizer к какому-то сайту — не пишите мне в личку (пожалуйста). Напишите тут в топике, найдутся добрые люди, кто вам поможет. Мне в день по 3-5 человек пишут, мне не хватает физически времени всем помогать.
  5. Если не понимаете что не так — выложите тут скрин с окном лога и местом где что-то пошло не так.

Скачать ReCaptchaGnizer v2.2b: https://yadi.sk/d/y1hTlF4E3Vh4vU

zennolab.com


You May Also Like

About the Author: admind

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Adblock
detector