Перейти к основному содержимому

Распознать ReCaptcha

🔗 Оригинальная страница — Источник данного материала


Описание

Позволяет пройти проверку на сайтах с установленной защитой от ботов.

Метод подходит только для: reCAPTCHA v2, reCAPTCHA v2 Invisible и reCAPTCHA v3.

image-20200817-183343

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

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

image-20200817-184031

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

  • Прохождение регистраций
  • Парсинг сайтов и поисковых систем
  • Выполнение массовых действий

Принцип работы

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

image-20200817-201605

  1. Выбор модуля для распознавания каптчи из выпадающего списка.
  2. Предварительно надо указать ваш API ключ от сервиса в настройках.
  3. Устанавливаем CapMonster.Cloud в качестве сервиса по умолчанию
  4. Регистрация аккаунта в CapMonster.Cloud.

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

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

image-20210606-141419

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

Выбираем Распознавание reCaptcha v2 и метод Во вкладке.

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

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

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

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

Вкладка

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

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

Выполнять autosubmit

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

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

Указываем здесь название переменной, в которую хотим положить идентификатор задания.


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

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

image-20210606-142549

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

Выбираем Распознавание reCaptcha v2 и метод Через SiteKey.

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

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

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

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

SiteKey

Уникальный ключ, который находится в HTML-коде страницы. Он используется для идентификации сайта на серверах Google.

Как получить SiteKey
  • В исходном коде страницы DOM

image-20200820-222857

image-20200818-142443

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

image-20200818-131857

URL

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

data-s

Необязательный параметр, который встречается на некоторых сайтах.

Например, он есть в поиске Google и на его сервисах.

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

Указываем здесь название переменной, в которую хотим положить идентификатор задания.

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

А в этой переменной сохранится ответ от сервиса распознавания — токен решённой Recaptcha.

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

Отправка Token в браузере

После получения токена его нужно подставить в соответствующее поле.

Вот как его найти:

image-20200820-160133

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

image-20200820-160416

  1. Теперь ПКМ → «В конструктор действий»

image-20200820-160719

  1. Выбираем атрибут style и пишем в значение display:block

  2. Через кнопку «Тестировать» можно проверить, сработает функция или нет

  3. Далее добавляем экшен в проект

image-20200820-161030

Под самой капчей появится поле для вставки токена, например, через Установку значения

Отправка Token на сервер через запросы

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

image-20200818-150431

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


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

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

image-20210606-143706

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

Выбираем Распознавание reCaptcha v3 и метод Во вкладке.

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

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

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

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

Вкладка

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

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

Action

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

image-20200819-143618

Уникален для каждого сайта

Min score

Диапазон от 0.1 до 0.9

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

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

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

Указываем здесь название переменной, в которую хотим положить идентификатор задания.

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

А в этой переменной сохранится ответ от сервиса распознавания — токен решённой Recaptcha.


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

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

image-20210606-144409

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

Выбираем Распознавание reCaptcha v3 и метод Через SiteKey.

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

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

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

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

SiteKey

Уникальный ключ, который находится в HTML-коде страницы. Он используется для идентификации сайта на серверах Google.

Как получить SiteKey
  • В исходном коде страницы DOM

image-20200820-222857

image-20200818-142443

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

image-20200818-131857

URL

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

data-s

Необязательный параметр, который встречается на некоторых сайтах.

Например, он есть в поиске Google и на его сервисах.

Action

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

image-20200819-141448

Уникален для каждого сайта

Min score

Диапазон от 0.1 до 0.9

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

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

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

Указываем здесь название переменной, в которую хотим положить идентификатор задания.

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

А в этой переменной сохранится ответ от сервиса распознавания — токен решённой Recaptcha.

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

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

image-20200819-141713

  • Если запрос происходит при загрузке страницы, то выбираем распознавание reCaptcha v3 через sitekey.
  • Когда запрос осуществляется после отправки формы на сайт, то распознавание reCaptcha v3 во вкладке.
  • Параметры : SiteKey, Action, Score, URL можно задавать через переменные.
Подмена token происходит до отправки запроса

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

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

image-20200819-155444

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

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

Сообщает сервису об успешном решении капчи.

caEo9nxYKK

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


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

Отправка токена RCv3 при решении «Во вкладке»

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

Способ «Во вкладке» подходит только для запросов, которые происходят после отправки формы.

image-20200819-142230

Для примера обратимся к сайту с reCAPTCHA V3 (Beta)

image-20210322-115011

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

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

Таким образом получаем 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&lt;string&gt; {replaceRegex}, new List<string> {newToken}, false);

image-20200819-144708

Использовать SiteKey в сниппете необязательно

Однако без него будут перехватываться запросы от всех капч, включая ReCaptcha2.

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

var newToken = project.Variables["имя_переменной_token"].Value;
var replaceRegex = @"(?&lt;=\[""rresp"","")[^""]+";
instance.ChangeResponse("https://www.google.com/recaptcha/api2/reload\\?k=",
new List&lt;string&gt; {replaceRegex}, new List<string> {newToken}, false);
По итогу отправляем форму на сайте:
image-20210322-115157

В окне трафика можно убедиться, что token успешно подменён.


Отправка токена RCv3 при решении «через SiteKey»

Если в Окне трафика видим, что запрос выполняется вместе с загрузкой страницы сайта, то порядок действий отличается от разгадывания «Во вкладке».

Сначала настраиваем кубик для разгадывания капчи и получаем token
image-20200819-150311

Далее с помощью C# сниппета отправляем его сайту:

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

image-20200819-151254

Использовать SiteKey в сниппете необязательно

Однако без него будут перехватываться запросы от всех капч, включая ReCaptcha2.

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

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

Только после этого загружаем страницу с ReCaptcha v3 и производим необходимые действия.


Работа с экшеном

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

cat1

  1. Заходим на страницу.
  2. Добавляем в проект экшен разгадать reCaptcha.
  3. Настраиваем кубик.
  4. Проходим проверку сайта.

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


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

  1. ❗→ Окно трафика
  2. ❗→ Окно переменных
  3. ❗→ Данные
  4. CapMonster Cloud