Как решать капчи с изображениями при веб-скрапинге в 2025 году: Подробная инструкция и лучшие рекомендации
Капчи с изображениями являются одной из самых популярных технологий защиты сайтов. Хотя в последнее время внимание смещается в сторону невидимых методов: часто проверка "человечности" происходит в фоновом режиме, и порой пользователи даже не замечают, что на сайте есть защита. Тем не менее, капчи с изображениями всё ещё широко используются, в том числе в тех случаях, когда фоновая проверка не проходит – система подозревает пользователя и просит пройти дополнительную визуальную проверку, как это делает, например, reCAPTCHA.
В процессе скрапинга и других задач в интернете часто приходится сталкиваться с этим препятствием. Но знание того, как обойти капчи, и использование нужных инструментов позволяет без труда продолжать поиск и извлечение данных с сайтов. В этой статье мы разберёмся, что такое капчи с изображениями (Image CAPTCHA), какие они бывают и как с ними справляться при веб-скрапинге.
Что такое капчи с изображениями
Капчи с изображениями (Image CAPTCHA) – это способ проверки на бота, где пользователю нужно выполнить задание с картинками. Он может включать выбор конкретных объектов (например, автомобилей или светофоров), ввод символов с искажённого изображения, сборку пазлов или вращение фрагментов изображения до их правильного расположения.
Распространённые типы капч с изображениями
В процессе работы в интернете вы можете встретить самые разные типы капч с изображениями. Давайте разберём самые популярные из них:
reCAPTCHA V2
Это классическая капча от Google, где пользователю нужно кликнуть “Я не робот”. Если алгоритм доверяет пользователю, капча сразу считается решённой. В ином случае появляется тест с изображениями.


ImageToText
Это тип капчи, в которой пользователю нужно расшифровать текст с изображения и ввести его в поле.

Сложные капчи
Сложные капчи с изображениями — это тип проверок, в которых пользователю требуется выполнить нестандартное задание с использованием изображений. Она сложнее обычных капч с изображениями (Image CAPTCHA), так как требует анализировать, перемещать или изменять элементы изображения. Давайте рассмотрим примеры таких заданий:
Поворот изображения (Rotate CAPTCHA)
Требуется повернуть картинку до правильного положения:

Выбор элементов (Object Selection)
Нужно кликнуть на определённые объекты, выбрать все предметы одного типа (животные, фрукты и т. д.). Или, как в данном случае, найти все кубики с нужным числом:

Пазлы (Puzzle CAPTCHA)
Нужно перетащить часть изображения в правильное место:

Да, все эти типы проверок сложно пройти автоматическим путём, но, к счастью, имеются специальные сервисы наподобие CapMonster Cloud, которые легко и быстро справляются с этой задачей. Для интеграции вашего парсера с CapMonster Cloud достаточно получить API-ключ в личном кабинете и создать задачу на решение и получение результата от сервера. Также можно обходить такие проверки прямо в браузере – просто скачайте и установите расширение для Chrome или Firefox.
Как решать reCAPTCHA V2
Наш сервис решает reCAPTCHA V2 двумя методами – токеном и кликами:
- Метод токена – вы получаете готовый g-recaptcha-response, который можно сразу вставить в форму и отправить. Этот способ быстрее и удобнее для автоматизации и скриптов.
- Метод кликов – здесь происходит имитация действий пользователя: нажатие на чекбокс «Я не робот», решение дополнительных заданий (если они появляются) и подтверждение капчи. Этот метод полезен, если нужна эмуляция реального поведения.
В зависимости от выбора метода, вам нужно правильно создать задачу. Пример запроса на создание задачи и получения результата для метода токена:
POST https://api.capmonster.cloud/createTask
{
"clientKey":"API_KEY",
"task": {
"type":"RecaptchaV2Task",
"websiteURL":"https://your_page_with_captcha",
"websiteKey":"your_websitekey"
}
}
Вам понадобится указать тип капчи (с прокси или без), целевую страницу с капчей и websiteKey – специальный ключ-идентификатор капчи. В статье блога и в документации вы можете изучить подробную инструкцию, как его найти.
POST https://api.capmonster.cloud/getTaskResult
{
"clientKey":"API_KEY",
"taskId": 123456789
}Для получения результата отправьте запрос на https://api.capmonster.cloud/getTaskResult с вашим API-ключом и taskId задания.
Теперь приведём пример запроса на решение и получение результата для метода кликов:
POST https://api.capmonster.cloud/createTask
{
"clientKey":"API_KEY",
"task": {
"type": "ComplexImageTask",
"class": "recaptcha",
"imageUrls":[ "https://i.postimg.cc/yYjg75Kv/payloadtraffic.jpg" ],
"metadata": {
"Task": "Click on traffic lights",
"Grid": "3x3",
"TaskDefinition": "/m/015qff"
},
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36",
"websiteUrl": "https://lessons.zennolab.com/captchas/recaptcha/v2_simple.php?level=middle"
}
}
Здесь вам нужно будет указать такие важные параметры, как:
imageUrls – URL изображения капчи (может быть сетка 3x3, 4x4 или 1x1). Например: [“https://i.postimg.cc/yYjg75Kv/img1.jpg”], выглядит примерно так:

imagesBase64 (если не заполнено imageUrls) – цельное изображение 4x4, 3x3 или 1x1 в формате base64 (в массиве). Пример: [ “/9j/4AAQSkZJRgABAQEAAAAAAAD…”]
Task – инструкция к капче (как в данном примере, выбрать все светофоры).
Grid – размер сетки (3x3). Может быть 4x4 и др.
TaskDefinition (если не заполнено Task) – код объекта, который нужно найти (например "/m/015qff" означает “светофоры”). Также могут быть "/m/02y864" – автобус, "/m/0k4j" – мотоцикл и др. Этот параметр можно найти в Инструментах разработчика:

Также дополнительно можно (но необязательно) указать актуальный userAgent и URL страницы, где находится капча.
Как решать текстовые капчи с изображениями (ImageToText)
Рассмотрим пример создания запроса
POST https://api.capmonster.cloud/createTask
{
"clientKey":"API_KEY",
"task": {
"type":"ImageToTextTask",
"body":"BASE64_BODY_HERE!"
}
}
и получения результата решения капчи ImageToText:
POST https://api.capmonster.cloud/getTaskResult
{
"clientKey":"API_KEY",
"taskId": 123456789
}
Для этого типа необходимо отправить закодированную в base64 картинку. Получить эти данные можно разными способами, вот один из примеров получения base64 прямо в консоли браузера:
async function getBase64FromImageUrl(url) {
const response = await fetch(url);
const blob = await response.blob();
const reader = new FileReader();
return new Promise((resolve) => {
reader.onloadend = () => resolve(reader.result.split(",")[1]);
reader.readAsDataURL(blob);
});
}
getBase64FromImageUrl("https://example.com/captcha.jpg").then(console.log);
Как решать сложные капчи с изображениями
Для решения таких задач в основном понадобится параметр base64 для всех картинок, которые содержит капча. Рассмотрим пример запроса для Betpunch капчи, в которой пользователю необходимо повернуть изображение в правильное положение. Сначала находим base64 всех картинок и передаём их в следующем порядке:

Пример запроса:
{
"clientKey": "API_KEY",
"task": {
"type": "ComplexImageTask",
"class": "recognition",
"imagesBase64": [
"{image_1_Base64}",
"{image_2_Base64}",
"{image_3_Base64}",
"{image_4_Base64}",
"{image_5_Base64}",
"{image_6_Base64}",
"{image_7_Base64}",
"{image_8_Base64}",
"{image_9_Base64}"
],
"metadata": {
"Task": "betpunch_3x3_rotate"
}
}
}Указываем в “Task” betpunch_3x3_rotate. Для получения результата используем метод getTaskResult, как в предыдущих примерах. В ответ в случае успешного решения вы получите массив чисел, представляющий решение капчи. Этот JSON-ответ нужно использовать для подтверждения решения. Пример, как это можно реализовать с помощью Selenium:
from selenium import webdriver
# Пример использования ответа из JSON
rotation_values = [4,4,4,4,4,3,1,2,2]
# Дальше используем Selenium для кликов или ввода данных
Рекомендации для успешного решения
Мы рассмотрели основные шаги для автоматического решения капч с изображениями с помощью CapMonster Cloud. Но можно ещё больше облегчить этот процесс и сделать его более удобным. Давайте рассмотрим несколько полезных рекомендаций:
Использование SDK
CapMonster Cloud предоставляет собственные библиотеки для разработчиков, позволяя значительно сократить код по сравнению с использованием стандартных HTTP-библиотек. Они поддерживают различные языки программирования, включая Python, JavaScript, C# и другие. Это делает интеграцию удобной для разработчиков с разным технологическим стеком. Благодаря готовым методам для создания задач и получения результатов, разработчикам не нужно формировать длинные HTTP-запросы, долго обрабатывать ответы и управлять временем ожидания. Это упрощает процесс работы с сервисом и повышает стабильность кода. Ознакомиться с примерами и шаблонами для интеграции вы можете в документации.
Автоматизация и дополнительные инструменты
В методе кликов искать и извлекать параметры для запроса на CapMonster Cloud вручную очень неудобно. Тогда в этом случае можно использовать автоматизацию, например, с помощью Selenium. Скрипт поможет автоматически находить текст задания (например, «Click on traffic lights»), определять размер сетки (3x3 или 4x4) и извлекать ссылки на изображения. Эти данные затем передаются в CapMonster Cloud для решения капчи. Такой подход значительно ускоряет процесс решения.
Работа с прокси
Некоторые сайты могут блокировать решения капч, если все запросы приходят с одного IP-адреса. Использование прокси помогает избежать этого, обеспечивая большую анонимность и повышая шанс успешного прохождения капчи. Используйте надёжные прокси с высокой скоростью; подбирайте географически подходящие IP-адреса, если сайт проверяет местоположение.
Улучшение скорости запросов
Чтобы ускорить обработку капч, можно отправлять несколько задач параллельно. Для этого рекомендуется разбить решения на отдельные потоки (многопоточная обработка), использовать асинхронные запросы (например, asyncio в Python), уменьшить задержки между запросами, но не делать их слишком частыми, чтобы избежать блокировок.
Заключение
Следуя основным шагам и рекомендациям, которые мы разобрали в этой статье, вы сможете значительно упростить процесс решения капч, снизить вероятность блокировок и ускорить сбор данных. Если у вас остались вопросы или вы хотите узнать больше о конкретных методах, рекомендуем изучить официальную документацию CapMonster Cloud и попробовать интеграцию на практике!
NB: Пожалуйста, обратите внимание, что продукт предназначен для автоматизации тестирования исключительно ваших собственных веб-сайтов и ресурсов, к которым у вас есть законное право доступа.






