Как обойти капчу в Google Chrome
Как обойти капчу в Chrome с помощью API 2Captcha v2
Капчи стоят на страже сайтов, но иногда мешают автоматизировать вполне легальные задачи. Занимаешься парсингом, тестированием или пишешь ботов? Тогда это руководство для тебя.
Покажу три основных способа решать капчи в Chrome через наш сервис: через Postman без кода, через наше расширение и через прямой вызов API. В конце добавлю бонус для тех, кто работает с Puppeteer и Node.js.
Что понадобится
- Аккаунт в нашем сервисе и API-ключ
- Браузер Chrome
- Python или Node.js, в зависимости от выбранного способа
- 5-10 минут на настройку
Какие капчи мы поддерживаем
Сервис работает с большинством популярных типов защиты.
Основные типы
- Простая капча, текстовая капча
- reCAPTCHA V2, V3, Enterprise
- Cloudflare Turnstile
- Arkose Labs CAPTCHA (FunCaptcha)
- GeeTest, GeeTest V4
Интерактивные и визуальные
- Rotate CAPTCHA, Click CAPTCHA, Grid CAPTCHA
- Draw Around, Bounding box, Coordinates
- Capy Puzzle CAPTCHA, KeyCAPTCHA, Lemin CAPTCHA
- Amazon CAPTCHA, VK CAPTCHA, Tencent
Другие форматы
- Audio CAPTCHA, CyberSiARA, MTCaptcha
- DataDome CAPTCHA, Friendly CAPTCHA, CutCAPTCHA
- atbCAPTCHA, Prosopo Procaptcha, CAPTCHAFox
- Altcha CAPTCHA, Temu CAPTCHA
Если твоя капча есть в этом списке, скорее всего, её можно решить автоматически.
Способ 1. Быстро и без кода: решаем капчу через Postman
Нужно протестировать решение капчи или сделать разовый запрос, но не хочешь писать скрипт? Возьми Postman. Это отличный способ проверить, как всё работает, перед тем как переходить к автоматизации в Chrome.
Как это работает по шагам
- Открой документацию нашего сервиса и найди пример запроса для нужного типа капчи
- Скопируй пример в Postman, импорт через raw JSON или cURL
- Подставь свои значения:
clientKey— твой API-ключ из личного кабинетаwebsiteURL— адрес страницы с капчей в ChromewebsiteKey— sitekey капчи, как его найти, расскажу ниже
- Отправь запрос и дождись ответа
- Скопируй токен из поля
solutionи используй его на целевом сайте
Пример запроса для reCAPTCHA V2
json
{
"clientKey": "твой_ключ",
"task": {
"type": "RecaptchaV2TaskProxyless",
"websiteURL": "https://example.com",
"websiteKey": "6Lc..._sitekey"
}
}
Как получить готовое решение
После создания задачи ты получишь taskId. Используй его, чтобы проверить статус:
json
{
"clientKey": "твой_ключ",
"taskId": "1234567890"
}
Когда в ответе появится "status": "ready", забери токен из solution.gRecaptchaResponse.
Куда вставлять токен
Для reCAPTCHA V2 и V3 чаще всего токен подставляется в скрытое поле g-recaptcha-response. Открой DevTools в Chrome, нажми F12, перейди в консоль и выполни:
javascript
document.getElementById('g-recaptcha-response').textContent = 'ТВОЙ_ТОКЕН'
После этого нажми кнопку отправки формы на странице.
Только учти, этот способ вставки токена работает не везде. Мы показали самый частый случай, но у каждой капчи свои особенности. Для других типов защиты придётся поэкспериментировать: реши капчу вручную пару раз, посмотри, куда именно сайт ждёт ответ, и подстрой скрипт под нужную структуру.
Почему Postman — это удобно
- Не нужно писать код, всё настраивается в интерфейсе
- Запросы можно сохранить в коллекцию и использовать повторно
- Легко тестировать разные типы капч, меняя только параметры
- Наглядно видишь структуру запроса и ответа, полезно для отладки
- Работает независимо от браузера, можно параллельно тестировать в Chrome
Когда использовать этот способ
- Быстрая проверка, работает ли сервис с нужным типом капчи
- Отладка перед написанием скрипта на Python или Node.js
- Разовые задачи, когда не хочется поднимать окружение
- Тестирование прокси или параметров запроса
Ограничения
- Не подходит для массовых задач, каждый запрос создаёшь вручную
- Нет автоматизации, токены копируешь сам
- Требует переключения между Postman и браузером
Этот способ является идеальной стартовой точкой. Начни с Postman, чтобы понять логику работы API. А когда задачи станут регулярными, переходи к расширению или прямой интеграции через код.
Способ 2. Автоматизация через расширение Captcha Solver
Идеальный вариант, если нужно решать капчи прямо в браузере без написания сложных скриптов.
Установка и настройка
- Установи расширение из Chrome Web Store
- Открой настройки и вставь свой API-ключ
- Перейди на сайт с капчей, расширение распознаёт её автоматически
- Решение подставится в форму, тебе останется только отправить данные
Важные настройки расширения
- Включить плагин: включает или выключает анализ страницы
- Отправлять формы автоматически: удобно, но будь осторожен. Если форма не пройдёт валидацию, расширение может зациклиться и отправить капчу снова
- Задержка отправки формы: дай странице время на обработку перед автоотправкой
- В случае ошибки, повторить: полезно при нестабильном соединении
- Использовать прокси: если сайт блокирует по IP, укажи прокси в формате
login:password@ip:portилиip:portдля прокси без авторизации
Два режима работы для каждого типа капчи
- Включено: расширение ищет этот тип капчи на странице
- Решать автоматически: если включено, капча отправится на решение сразу. Если выключено, появится кнопка «Решить» для ручного запуска
Для капч-картинок
Расширение не знает, где именно находится картинка и куда вставлять ответ. Настрой вручную:
- Кликни правой кнопкой по картинке капчи, выбери «решать эту капчу»
- Кликни по полю ввода ответа, выбери «Вставить ответ на капчу сюда»
- Настройка сохранится для всего сайта
Важный технический нюанс
Токен капчи действует около 120 секунд. После получения решения используй его за 115-117 секунд, иначе придётся решать заново.
Пример связки с Selenium
python
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_extension('path/to/CaptchaSolver.crx')
options.add_argument('--disable-blink-features=AutomationControlled')
driver = webdriver.Chrome(options=options)
driver.get('https://example.com')
# Расширение само решит капчу, осталось дождаться и отправить форму
Плюсы: быстро настраивается, работает в реальном браузере, минимум кода.
Минусы: требует открытого Chrome, меньше гибкости в сложных сценариях, расширение распознаёт капчу не на всех сайтах.
Способ 3. Полная автоматизация через API
Максимальный контроль и масштабируемость. Подходит для продакшена и больших проектов.
Базовый запрос без прокси
python
import requests
import time
API_KEY = 'твой_ключ'
create_task_url = 'https://api.service.com/createTask'
get_result_url = 'https://api.service.com/getTaskResult'
data = {
"clientKey": API_KEY,
"task": {
"type": "RecaptchaV2TaskProxyless",
"websiteURL": "https://example.com",
"websiteKey": "site_key_капчи"
}
}
response = requests.post(create_task_url, json=data).json()
task_id = response['taskId']
# Ждём решение
while True:
result = requests.post(get_result_url, json={
"clientKey": API_KEY,
"taskId": task_id
}).json()
if result['status'] == 'ready':
solution = result['solution']['gRecaptchaResponse']
break
time.sleep(5)
С прокси, если сайт блокирует по IP
python
proxy_config = {
"type": "HTTPS",
"address": "proxy.example.com",
"port": 1234,
"login": "user",
"password": "pass"
}
data["task"].update({
"type": "RecaptchaV2Task",
"proxyType": proxy_config["type"],
"proxyAddress": proxy_config["address"],
"proxyPort": proxy_config["port"],
"proxyLogin": proxy_config.get("login"),
"proxyPassword": proxy_config.get("password")
})
Интеграция с Selenium
python
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get('https://example.com')
# Вставляем полученное решение
script = f"document.getElementById('g-recaptcha-response').innerHTML = '{solution}';"
driver.execute_script(script)
# Эмулируем клик по кнопке отправки
driver.execute_script("document.getElementById('submit-button').click();")
driver.quit()
Плюсы: полная автоматизация, работа с прокси, масштабируемость.
Минусы: требует написания кода, чуть сложнее в настройке.
Как найти sitekey для reCAPTCHA
Без правильного sitekey капча не решится. Вот как его найти.
Через инструменты разработчика
- Открой сайт с капчей в Chrome
- Нажми F12 или Ctrl+Shift+I для открытия DevTools
- Перейди во вкладку «Элементы»
- Найди блок с классом
g-recaptchaили похожим - Внутри найди атрибут
data-sitekey
Пример кода:
html
<div class="g-recaptcha" data-sitekey="6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI"></div>
Значение в data-sitekey и есть твой sitekey.
Через детектор в расширении
Если установлено расширение:
- Открой DevTools на странице с капчей
- Перейди во вкладку детектора капч
- В таблице параметров найди строку «Google reCAPTCHA site-key»
- Скопируй значение
Другие виды капч также могут требовать для отправки параметр sitekey или аналогичный идентификатор капчи, способов найти их огромное множество, поэтому мы описываем лишь пример для reCAPTCHA.
Бонус. Автоматизация через Puppeteer и расширение
Если ты работаешь на Node.js, Puppeteer даст тебе мощный инструмент для управления браузером. А в связке с расширением Captcha Solver ты получишь удобную автоматизацию капч.
Шаг 1. Установка зависимостей
bash
npm i puppeteer puppeteer-extra puppeteer-extra-plugin-stealth
Шаг 2. Настройка расширения
- Скачай и распакуй расширение в папку ./CaptchaSolver в корне проекта
- Открой файл ./common/config.js и укажи свой API-ключ в поле apiKey
- Для авторешения reCAPTCHA v2 измени autoSolveRecaptchaV2 на true
- Чтобы расширение не открывало настройки при запуске, удали из manifest.json блок options_ui
Шаг 3. Запуск Puppeteer с расширением
javascript
const puppeteer = require('puppeteer-extra');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');
const { executablePath } = require('puppeteer');
const path = require('path');
(async () => {
const pathToExtension = path.join(__dirname, 'CaptchaSolver');
puppeteer.use(StealthPlugin());
const browser = await puppeteer.launch({
headless: false,
args: [
`--disable-extensions-except=${pathToExtension}`,
`--load-extension=${pathToExtension}`,
],
executablePath: executablePath()
});
const [page] = await browser.pages();
// Переход на страницу с капчей
await page.goto('https://example.com');
// Ждём кнопку расширения и кликаем для отправки капчи
await page.waitForSelector('.captcha-solver');
await page.click('.captcha-solver');
// Ждём решения капчи (таймаут 3 минуты)
await page.waitForSelector('.captcha-solver[data-state="solved"]', {timeout: 180000});
// Капча решена, выполняем дальнейшие действия
await page.click('button[type="submit"]');
await browser.close();
})();
Как отслеживать статус решения
Расширение меняет атрибут data-state у кнопки .captcha-solver:
- ready: расширение готово, можно отправлять капчу
- solving: капча в процессе решения
- solved: решение получено, можно продолжать
- error: произошла ошибка, нужна повторная отправка
Полезные советы для Puppeteer
- Headless-режим не поддерживает расширения. Если нужен headless, используй xvfb или запускай в обычном режиме
- Для отладки включи sandbox-режим в настройках расширения, тогда капчи будут приходить тебе на проверку
- Используй puppeteer-extra-plugin-stealth, чтобы скрыть признаки автоматизации и снизить риск детекта бота
Плюсы: мощный контроль браузера, подходит для сложных сценариев, работает с Node.js.
Минусы: требует настройки расширения, не работает в headless без дополнительных инструментов.
Чек-лист перед запуском
- Проверь, что API-ключ активен
- Убедись, что параметры указаны верно
- Для API добавь небольшие задержки между запросами
- Используй прокси при большом количестве запросов с одного IP
- Тестируй скрипт в отладочном режиме перед запуском в продакшен
- Для расширения: настрой автоотправку форм с осторожностью, чтобы избежать зацикливания
Какой способ выбрать
- Разовые задачи и тесты: выбирай Postman
- Быстрая автоматизация в браузере: бери расширение
- Масштабные проекты и парсинг: подключай API
- Работа на Node.js и сложные сценарии: используй Puppeteer с расширением
Наш сервис даёт гибкость: начинай с простого, масштабируйся по мере роста задач. Документация и примеры кода есть на нашем сайте.
Автоматизируй с умом, уважай правила сайтов и не забывай про задержки между запросами. Если остались вопросы, пиши в поддержку через форму на сайте.
Удачи в настройке.