Распознать ReCaptcha

Оглавление


Описание

Позволяет пройти проверку на сайтах с установленной защитой от ботов. Метод подходит только для капч: reCAPTCHA v2, reCAPTCHA v2 Invisible и reCAPTCHA v3.


Как добавить действие в проект?

Через контекстное меню Добавить действиеТабыРаспознать ReCaptcha

Либо воспользуйтесь умным поиском.


Для чего это используется?

  • Прохождение регистраций

  • Парсинг сайтов и поисковых систем

  • Выполнение массовых действий


Как работать с экшеном?

Основные настройки

  1. Выбор модуля для распознавания каптчи. Из выпадающего списка необходимо выбрать желаемый сервис распознавания каптчи (предварительно надо указать его API ключ в настройках).

  2. Настройки капчи сервисов.

  3. Устанавливаем CapMonster.Cloud в качестве сервиса по умолчанию

  4. Регистрация аккаунта в CapMonster.Cloud. Все владельцы лицензии ZennoPoster получают бесплатно 5$ на баланс сервиса для разгадывания капч.


Распознавание reCaptcha v2 во вкладке

Разгадывание происходит непосредственно в окне браузера.

Метод распознавания

Выбираем соответствующую функцию (Распознавание reCaptcha v2) и метод распознавания (Во вкладке)

Использовать прокси проекта

На сервис для распознавания вместе с капчей будет отправлен текущий прокси проекта.

Использовать куки проекта

На сервис для распознавания вместе с капчей будут отправлены текущие куки проекта.

Вкладка

Выбираем на какой вкладке надо распознать капчу:

a) Активная - таб, который у вас в данный момент перед глазами.
b) Первая - первое окно слева.
c) По имени - указать имя таба или переменную учитывая регистр букв.
d) По номеру - задаём номер вкладки. Нумерация идёт слева направо начиная с 0.

Выполнять autosubmit

Если на странице нет кнопки для отправления формы с разгаданной рекапчей, необходимо включить эту опцию, чтобы выполнить автосабмит.

Положить ID задания в переменную

Переменная для идентификатора задания.


Распознавание reCaptcha v2 через sitekey

Процесс происходит без загрузки браузера.

Метод распознавания

Выбираем соответствующую функцию (Распознавание reCaptcha v2) и метод распознавания (Через SiteKey)

Использовать прокси проекта

На сервис для распознавания вместе с капчей будет отправлен текущий прокси проекта.

Использовать куки проекта

На сервис для распознавания вместе с капчей будут отправлены текущие куки проекта.

SiteKey

Recaptcha ключ сайта.

Параметр Sitekey индивидуален для каждого сайта

URL

Полный адрес страницы, на которой распознаётся Recaptcha.

data-s

Необязательно

Дополнительный параметр, который встречается не на всех сайтах, поэтому его передача опциональная.

Как минимум данный параметр встречается в поиске Google и на его сервисах.

Положить ID задания в переменную

Переменная для идентификатора задания.

Положить в переменную

В указанную здесь переменную сохранится ответ от сервиса распознавания - токен решённой Recaptcha.

Примеры отправки токена

После получения token необходимо подставить его в соответствующее поле.

Ниже рассмотрим как вызвать поле в браузере.

Через контекстное меню вызываем Дерево Элементов и находим поле(textarea) для ввода внутри капчи

Правой кнопкой мыши вызываем контекстное меню и нажимаем В конструктор действий

  1. Выбираем атрибут style

  2. Значение выставляем display:block

Через кнопку Тестировать можно проверить в браузере сработает функция или нет. Далее добавляем экшен в проект.

Под самой капчей появится поле куда и нужно вводить token. Это можно сделать с помощью действия Установка значения .

После успешного разгадывания капчи в переменную будет помещен ответ, содержащий token, для отправки на сервер. Его необходимо подставить в запрос, чаще всего это аргумент g-recaptcha-response.

Пример запроса на сайт всегда можно посмотреть в окне трафика


Распознавание reCaptcha v3 во вкладке

Разгадывание происходит непосредственно в окне браузера.

Метод распознавания

Выбираем соответствующую функцию (Распознавание reCaptcha v3) и метод распознавания (Во вкладке)

Использовать прокси проекта

На сервис для распознавания вместе с капчей будет отправлен текущий прокси проекта.

Использовать куки проекта

На сервис для распознавания вместе с капчей будут отправлены текущие куки проекта.

Вкладка

Выбираем на какой вкладке надо распознать капчу:

a) Активная - таб, который у вас в данный момент перед глазами.
b) Первая - первое окно слева.
c) По имени - указать имя таба или переменную учитывая регистр букв.
d) По номеру - задаём номер вкладки. Нумерация идёт слева направо начиная с 0.

Action

Параметр, который необходимо отыскать в исходном коде сайта.

Он находится в коде страницы в вызове функции grecaptcha.execute

Min score

Рейтинг пользователя при котором прохождение проверки будет считаться успешным, диапазон от 0.1 до 0.9.

Чаще всего достаточно значения 0.3, но для каждого сайта надо проверять индивидуально.

Положить ID задания в переменную

Переменная для идентификатора задания.

Положить в переменную

В указанную здесь переменную сохранится ответ от сервиса распознавания - токен решённой Recaptcha.


Распознавание reCaptcha v3 через sitekey

Процесс разгадывания происходит без загрузки браузера.

Метод распознавания

Выбираем соответствующую функцию (Распознавание reCaptcha v3) и метод распознавания (Через SiteKey)

Использовать прокси проекта

На сервис для распознавания вместе с капчей будет отправлен текущий прокси проекта.

Использовать куки проекта

На сервис для распознавания вместе с капчей будут отправлены текущие куки проекта.

SiteKey

Recaptcha ключ сайта.

  • В исходном коде страницы DOM

 

Нажимаем на запрос и переходим во вкладку Параметры

URL

Полный адрес страницы, на которой распознаётся Recaptcha.

data-s

Необязательно

Дополнительный параметр, который встречается не на всех сайтах, поэтому его передача опциональная.

Как минимум данный параметр встречается в поиске Google и на его сервисах.

Action

Параметр, который необходимо отыскать в исходном коде сайта.

Он находится в коде страницы в вызове функции grecaptcha.execute

Min score

Рейтинг пользователя при котором прохождение проверки будет считаться успешным, диапазон от 0.1 до 0.9.

Чаще всего достаточно значения 0.3, но для каждого сайта надо проверять индивидуально.

Положить ID задания в переменную

Переменная для идентификатора задания.

Положить в переменную

В указанную здесь переменную сохранится ответ от сервиса распознавания - токен решённой Recaptcha.


Примечание касательно reCaptcha v3

При загрузке страницы в окне трафика очень важно обратить внимание на запрос

  • Если запрос происходит при загрузке страницы, то выбираем распознавание reCaptcha v3 через sitekey.

  • Когда запрос осуществляется после отправки формы на сайт, то распознавание reCaptcha v3 во вкладке.

  • Параметры : SiteKey, Action, Score, Url можно задавать через переменные.

Пример отправки токена reCaptcha v3 при решении во вкладке

Отправка токена в браузере происходит путём его подмены. Способ во вкладке подходит, только когда запрос к Google-будет происходить после отправки формы

Рассмотрим на примере сайта https://lessons.zennolab.com/captchas/recaptcha/v3.php?level=beta

Во время загрузки сайта не было запроса к капче - значит метод разгадывания во вкладке нам подходит.

Настраиваем кубик для разгадывания ReCaptcha v3

Получаем token. Далее при помощи C# сниппета отправляем его сайту:

var sitekey = project.Variables["имя_переменной_sitekey"].Value; var newToken = project.Variables["имя_переменной_token"].Value; var replaceRegex = @"(?<=\[""rresp"","")[^""]+"; instance.ChangeResponse("https://www.google.com/recaptcha/api2/reload\\?k="+sitekey, new List<string> {replaceRegex}, new List<string> {newToken}, false);

Использование SiteKey в сниппете не является обязательным. Но нужно учитывать, что без использования SiteKey будут перехватываться запросы от всех капч, включая ReCaptcha2.

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

var newToken = project.Variables["имя_переменной_token"].Value; var replaceRegex = @"(?<=\[""rresp"","")[^""]+"; instance.ChangeResponse("https://www.google.com/recaptcha/api2/reload\\?k=", new List<string> {replaceRegex}, new List<string> {newToken}, false);

Отправляем форму на сайте.

В окне трафика можно убедиться, что подмена token на необходимый произошла

Пример отправки токена reCaptcha v3 при решении через SiteKey

 


Отчет об ошибке

Позволяет вернуть денежные средства в случае неудачной попытки разгадывания капчи.

ID задания указывается статичным значением или через переменную.


Отчет об успехе

Сообщаем сервису об успешном разгадывании капчи.

ID задания указывается статичным значением или через переменную.


Пример использования

При заходе на страницу антибот система просит подтвердить, что мы не робот.

  1. Заходим на страницу.

  2. Добавляем в проект экшен разгадать reCaptcha.

  3. Настраиваем кубик.

  4. Проходим проверку сайта.

На сегодняшний момент многие ресурсы пользуются защитой от компании Google. Она помогает сайтам пресекать массовые действия или определять ботов, но благодаря функционалу Zennoposter проходить такие проверки не составит труда.


Полезные ссылки

  1. Окно трафика

  2. Окно переменных

  3. Данные

  4. CapMonster Cloud