logo
bars
Оплата за решение · API

Сервис решения Cloudflare Challenge

CapMonster Cloud — сервис решения Cloudflare Challenge через API. Возвращает токен или cookie cf_clearance, поэтому автоматизация продолжает работу без ручного шага.

Обновлено:

Протестируйте бесплатно: $0.10 на баланс ↓
Среднее время решения
12 – 14 сек
Успешность
99%
за 1000 токенов
₽ 104.88

Стоимость решения Cloudflare Challenge

Тип капчи
Цена (РУБ)
₽ 104.88
1000 токенов
Выбор решения для Cloudflare Challenge

Cloudflare Challenge и Cloudflare Turnstile: в чём разница

Как отличить Challenge от Turnstile

Cloudflare Challenge и виджет Turnstile могут выглядеть одинаково. Challenge — не всегда отдельная страница «Just a moment…»: он может быть стилизован, встроен в сайт или замаскирован под обычный виджет Turnstile, поэтому по внешнему виду их отличить нельзя.

Какое решение CapMonster Cloud использовать

Cloudflare Turnstile

виджет
Где виден
Виджет внутри страницы или формы
Что возвращает
Токен в cf-turnstile-response
Страница CapMonster
Решение Cloudflare Turnstile

Cloudflare Challenge

403 · challenge-form
Где виден
Стилизованная проверка внутри сайта или промежуточная страница; признаки: 403 на первом запросе и challenge-form с __cf_chl_f_tk=
Что возвращает
Токен или cookie cf_clearance
Страница CapMonster
Эта страница: сервис решения Cloudflare Challenge

Если эти признаки есть, это Cloudflare Challenge: используйте решение Cloudflare Challenge на этой странице — оно возвращает токен или cookie cf_clearance. Иначе используйте решение Cloudflare Turnstile.

Сравнение сервисов решения Cloudflare Challenge

В таблице — цена за 1000 решений, среднее время решения и успешность решения у четырёх сервисов решения Cloudflare Challenge.

ПараметрCapMonster Cloud2CaptchaAnti-CaptchaBestCaptchaSolver
Цена за 1000 решений
₽ 104.88₽ 116.98₽ 161.35₽ 145.22
Среднее время решения (сек.)
12 – 1414 – 1818 – 2222 – 30
Успешность решения
99%97%95%80%

Цена Cloudflare Turnstile по данным провайдера; Cloudflare Challenge отдельно не указан.

2Captcha, Anti-Captcha и BestCaptchaSolver — товарные знаки соответствующих владельцев. CapMonster Cloud не связан с этими компаниями. Показатели производительности основаны на внутреннем бенчмарке, проведённом 26.08.2026. Сравнение цен основано на общедоступных данных на 30.09.2026.

Протестируйте бесплатно

Решайте Cloudflare Challenge за секунды

99% успешных решений капчи. Проверьте стабильность на своих целевых сайтах прямо сейчас. Мы не гарантируем стопроцентную успешность распознавания: тип капчи и конфигурация целевого ресурса могут измениться в любой момент.

$0.10

Новым пользователям — $0.10 на баланс для первого теста CapMonster Cloud

  1. 1. Зарегистрируйтесь в CapMonster Cloud.

  2. 2. Напишите в поддержку через онлайн-чат или support@capmonster.cloud и укажите email, привязанный к аккаунту.

Без банковской карты · Готовые SDK для Python, Node.js, C#

Для чего команды используют решение Cloudflare Challenge

QA и сквозное тестирование

Запускайте сценарии регистрации, оформления заказа и форм в CI/CD с Playwright, Puppeteer или Selenium на своих страницах или там, где тестирование разрешено.

Мониторинг

Проверяйте, что страницы за Cloudflare Challenge остаются доступными после релизов и изменений правил.

Общедоступные данные

Собирайте общедоступные данные с открытых страниц, которые закрыты проверкой Cloudflare Challenge.

Доступность

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

ИИ-агенты

Позвольте агенту запросить токен или cookie cf_clearance через MCP, когда сценарий доходит до проверки.

Только законное использование

Используйте CapMonster Cloud для работы с общедоступными данными и на сайтах, которые принадлежат вам или которые вам разрешено тестировать. Сбор чужих данных за логином или платным доступом без разрешения запрещён.

Типы проверок Cloudflare Challenge

Как Cloudflare выдаёт и проверяет Challenge

Cloudflare показывает три типа страниц проверки: JS Challenge, Managed Challenge и Interactive Challenge. Показывать ли проверку, решают правила WAF или Bot Management. CapMonster Cloud решает все три типа; WAF / Bot Management — более широкий продукт, он описан отдельно.

Источники: документация Cloudflare (EN) — How challenges work · Interstitial challenge pages · Under Attack mode

«5-секундная проверка»

1. JS Challenge

Работает в фоне: пока показывается промежуточная страница, браузер выполняет JavaScript-код, а Cloudflare анализирует результат. От пользователя действий не требуется — целевая страница загружается автоматически, если проверка пройдена.

Где появляется
Промежуточная страница с фоновой проверкой
Что возвращается
cf_clearance cookie (по умолчанию)

включая Under Attack Mode

2. Managed Challenge

В режиме Cloudflare Managed Challenge Cloudflare сам выбирает проверку — по характеристикам запроса и сигналам браузера: от невидимой фоновой до полноценного виджета. Режим Under Attack Mode использует Managed Challenge.

Где появляется
Промежуточная страница, тип проверки выбирает Cloudflare
Что возвращается
cf_clearance cookie (по умолчанию)

виджет на промежуточной странице

3. Interactive Challenge

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

Где появляется
Промежуточная страница с обязательной интерактивной проверкой
Что возвращается
cf_clearance cookie (по умолчанию)

4. WAF / Bot Management

Слой правил и риск-скоринга, который решает, когда показать боту проверку Cloudflare. Решение формируют механизмы обнаружения, среди которых:

Где появляется
Слой правил обработки запросов и риск-скоринга
Что возвращается
Ничего не возвращает сам — по оценке риска триггерит одно из действий выше (или блокировку)

Bot Management шире трёх типов Challenge и не является их синонимом — это система оценки риска, а не сама проверка.

  • Heuristics engine сверяет запрос с постоянно растущей базой известных отпечатков ботов и мгновенно присваивает минимальный балл, если находит совпадение.
  • JS Detections engine необязательная невидимая JS-проверка на стороне клиента, которая выявляет headless-браузеры и другие подозрительные признаки окружения.
  • Machine Learning engine обучаемая модель, которая анализирует паттерны в миллиардах ежедневных запросов и выдаёт итоговую оценку риска от 1 до 99.

Источники (EN): Bot scores · Bot detection engines · JavaScript detections

Как проходит проверка Cloudflare Challenge

  1. 1. Запрос

    Браузер запрашивает защищённую страницу. Cloudflare Bot Management оценивает запрос по TLS-отпечатку, репутации IP и поведенческим сигналам.

  2. 2. Оценка риска

    Механизмы Heuristics, JS Detections и Machine Learning выдают оценку Bot Score от 1 до 99, а правила WAF решают, показывать ли проверку.

  3. 3. Промежуточная страница

    Если запрос выглядит подозрительно, Cloudflare возвращает страницу «Just a moment…» с кодом 403 и запускает JS Challenge, Managed Challenge или Interactive Challenge.

  4. 4. cf_clearance

    Когда проверка пройдена, Cloudflare выдаёт cookie cf_clearance, которая привязана к посетителю и устройству и действует ограниченное время.

  5. 5. Доступ

    Браузер загружает исходную страницу с этой cookie. Cloudflare продолжает переоценивать поведение сессии (Precursor clearance) и может показать новую проверку.

Что такое cookie cf_clearance?

cf_clearance — cookie, которую Cloudflare выдаёт после того, как посетитель прошёл Cloudflare Challenge. Браузер отправляет её со следующими запросами к защищённому сайту, и страница открывается без повторной проверки.

Свойства cookie по документации Cloudflare (EN):

Посетитель и устройство

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

Срок действия

Действует ограниченное время (по умолчанию 30 минут; сайт задаёт его настройкой Challenge Passage): долго работающий скрипт должен пройти проверку заново после его истечения.

Проверка доступа

Сама по себе не гарантирует доступ: Precursor clearance продолжает переоценивать поведение сессии и может вызвать повторную проверку, даже если срок cookie не истёк.

Что обнуляет cookie cf_clearance

Привязка

Смена посетителя или устройства

Доступ обнуляется: cookie привязана к посетителю и устройству, для которых была выпущена

Срок действия

Срок действия

Cookie перестаёт работать; скрипт должен пройти проверку заново

Поведение

Precursor clearance

Cloudflare может понизить или обнулить уровень допуска и показать повторную проверку, если трафик выглядит подозрительно

Токен или cf_clearance: какой результат запрашивать

Для разработчиков, которые получают токен или cf_clearance через CapMonster Cloud

Параметр cloudflareTaskType задачи TurnstileTask определяет, что вернёт CapMonster Cloud. Выберите вариант в зависимости от того, что требует целевой сайт: токен для callback-функции проверки на странице или cookie cf_clearance для дальнейших запросов.

Токен и cf_clearance

ПараметрТокенcf_clearance
cloudflareTaskTypetokencf_clearance
ПроксиНеобязателенпо умолчанию работает на прокси CapMonster CloudОбязателенваш собственный прокси
websiteKeyКлюч Cloudflare Challenge, например 0x4AAAAAAABUYP0XeMJF0xoyЛюбая строка, например xxxxxx
Данные страницыpageAction, data (cData), pageData (chlPageData)htmlPageBase64 — Base64 страницы «Just a moment» с кодом 403
Результатsolution.tokensolution.cf_clearance
Где использоватьCallback-функция проверки на страницеЗаголовок Cookie: cf_clearance=<value> или контекст браузера

Поддерживаемые типы прокси (cf_clearance)

proxyTypeОписание
httpОбычный HTTP-прокси
httpsДля некоторых нестандартных прокси
socks4Прокси SOCKS4
socks5Прокси SOCKS5

Полный справочник параметров: документация задачи Cloudflare Challenge.

Как использовать сервис решения Cloudflare Challenge

API CapMonster Cloud принимает параметры задачи, обрабатывает их на своих серверах и возвращает токен или cookie cf_clearance. Решить Cloudflare Challenge можно в четыре шага: получить API-ключ, отправить задачу на решение капчи, запросить результат и подставить полученный токен или cookie в свои запросы.

Ваш скриптCapMonster Cloud APIЦелевой сайт

Получить API-ключ

  • Зарегистрируйтесь в CapMonster Cloud.
  • Откройте дашборд и найдите свой API-ключ.
  • Используйте этот ключ как параметр clientKey в своих запросах.

Отправить задачу — createTask

Вызовите метод createTask с типом задачи TurnstileTask. Параметр cloudflareTaskType определяет, что вернёт метод: токен или cookie cf_clearance. Выберите вариант в зависимости от того, что требует целевой сайт. Подробнее см. Как отличить Challenge от Turnstile.

Вариант 1 · Challenge (токен) — по умолчанию работает на прокси CapMonster Cloud. Обязательные поля:

ПараметрОписание
typeTurnstileTask
websiteURLURL страницы, на которой решается проверка
websiteKeyКлюч Cloudflare Challenge, например 0x4AAAAAAABUYP0XeMJF0xoy
cloudflareTaskTypetoken
pageActionПоле action из callback капчи, обычно managed или non-interactive
userAgentАктуальный User-Agent, поддерживаемый CapMonster Cloud. Получить актуальное значение можно по адресу https://capmonster.cloud/api/useragent/actual.
dataЗначение параметра cData
pageDataЗначение параметра chlPageData

Опционально: apiJsUrl и поля прокси. Свои прокси нужны только если сайт не принимает токен или доступ к встроенным сервисам ограничен; при авторизации по IP добавьте адрес 65.21.190.34 в белый список.

Пример запроса:

json
{
  "clientKey": "API_KEY",
  "task": {
    "type": "TurnstileTask",
    "websiteURL": "https://yourwebsite.com/page-with-cf-challenge",
    "websiteKey": "your-website-key",
    "cloudflareTaskType": "token",
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
    "pageAction": "your-page-action",
    "pageData": "your-page-data",
    "data": "your-data"
  }
}

Вариант 2 · Challenge (cookie) — требует своих прокси. Обязательные поля:

ПараметрОписание
typeTurnstileTask
websiteURLURL страницы, на которой решается проверка
websiteKeyМожно передать любую строку, например xxxxxx
cloudflareTaskTypecf_clearance
htmlPageBase64Base64 страницы «Just a moment», отдаваемой с кодом 403
userAgentАктуальный User-Agent, поддерживаемый CapMonster Cloud. Получить актуальное значение можно по адресу https://capmonster.cloud/api/useragent/actual.
proxyTypehttp, https (для некоторых нестандартных прокси), socks4, socks5
proxyAddress, proxyPort, proxyLogin, proxyPasswordВаши прокси. Прозрачные и локальные прокси не допускаются.

Пример запроса:

json
{
  "clientKey": "API_KEY",
  "task": {
    "type": "TurnstileTask",
    "websiteURL": "https://yourwebsite.com/page-with-cf-challenge",
    "websiteKey": "xxxxxxxxxx",
    "cloudflareTaskType": "cf_clearance",
    "htmlPageBase64": "PCFET0NUWVBFIGh0...vYm9keT48L2h0bWw+",
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
    "proxyType": "your-proxy-type",
    "proxyAddress": "your-proxy-address",
    "proxyPort": 1234,
    "proxyLogin": "your-proxy-login",
    "proxyPassword": "your-proxy-password"
  }
}

Эндпоинт и ответ — одинаковы для обоих вариантов:

text
POST https://api.capmonster.cloud/createTask
{
  "errorId": 0,
  "taskId": 407533072,
  "errorCode": null,
  "errorDescription": null
}

Для пользователей из России также доступен адрес: https://ru.api.capmonster.cloud/createTask

Опросить результат — getTaskResult

Опрашивайте метод getTaskResult с полученным ранее taskId до статуса ready. Запрос одинаков для обоих вариантов; в объекте solution приходит тот результат, который вы запросили.

Эндпоинт и запрос:

text
POST https://api.capmonster.cloud/getTaskResult
{
  "clientKey": "API_KEY",
  "taskId": 407533072,
  "errorCode": null,
  "errorDescription": null
}

Вариант 1 · Challenge (токен) — solution.token

json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
    "token": "0.iGX3xsyFCkbGePM3jP4P4khLo6TrLukt8ZzBvwuQOvbC...f61f3082"
  }
}

Токен подставляется при вызове callback-функции на странице.

Вариант 2 · Challenge (cookie) — solution.cf_clearance

json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "cf_clearance": "1tarGvbY2_ZhQdYxpSBloao.FoOn9VtcJtmb_IQ_hCE-1761217338-1.2.1.1-vyVPoLYIGX0...ZHi.w"
  }
}

Специальная cookie Cloudflare: добавляется в браузер или отправляется в обычных HTTP-запросах.

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

Если используете cookie, передавайте её значение в заголовке Cookie: cf_clearance=<value> при обычных HTTP-запросах, либо устанавливайте её в контексте браузера перед повторным обращением к защищённому URL.

Если используете токен, передайте его в callback-функцию проверки на странице.

Как найти параметры Cloudflare Challenge

Для варианта с токеном нужны значения, которые страница передаёт в turnstile.render при запуске проверки: sitekey (websiteKey), action (pageAction), cData (data) и chlPageData (pageData). Для варианта с cookie нужен HTML страницы проверки в htmlPageBase64; websiteKey может быть любой строкой.

Как найти параметры Cloudflare Challenge
javascript
(function () {
  const obj = {
    render: function () {
      const { action, cData, chlPageData } = arguments[1];
      console.table([["action", action], ["data", cData], ["pageData", chlPageData]]);
    }
  };
  Object.defineProperty(window, "turnstile", { get: () => obj });
})();
sitekey → websiteKey
action → pageAction
cData → data
chlPageData → pageData
  1. Выполните этот JavaScript до загрузки остальных скриптов страницы: он подменяет window.turnstile и выводит параметры, переданные в render.

  2. Возьмите action (pageAction), cData (data) и chlPageData (pageData) из таблицы в консоли; sitekey (websiteKey) передаётся в том же объекте. pageAction обычно равен managed или non-interactive.

  3. Чтобы собирать значения автоматически, используйте браузер под управлением Playwright (обычный или headless): оберните window.turnstile в Proxy и перехватите render. Готовые примеры на JavaScript, Python и C# — в документации.

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

javascript
fetch('https://example.com')
  .then(res => res.arrayBuffer())
  .then(buf => console.log(btoa(String.fromCharCode(...new Uint8Array(buf)))));
  1. Запросите защищённый сайт: он вернёт страницу «Just a moment…» с кодом 403.

  2. Закодируйте эту страницу в Base64 — это htmlPageBase64 (сниппет показывает один из способов; примеры для Playwright с page.content() — в документации).

  3. Передайте в websiteKey любую строку (например, xxxxxx) и используйте свой прокси.

  4. Создавайте задачу сразу после того, как собрали значения.

Решение Cloudflare Challenge с официальными SDK

CapMonster Cloud предоставляет готовые библиотеки для удобной работы на Python, JavaScript (Node.js) и C#.
Ниже примеры кода: как создать задачу на решение капчи методом createTask и получить результат методом getTaskResult через наши клиентские библиотеки.
Официальные SDK
Python
python
import asyncio
from capmonstercloudclient import CapMonsterClient, ClientOptions
from capmonstercloudclient.requests import TurnstileRequest
API_KEY = "YOUR_API_KEY"
async def solve_turnstile_challenge():
    client = CapMonsterClient(options=ClientOptions(api_key=API_KEY))
    # Базовый пример без прокси: CapMonster Cloud автоматически использует свои прокси
    turnstile_request = TurnstileRequest(
        websiteURL="https://yourwebsite.com/page-with-cf-challenge",
        websiteKey="your-website-key",
        data="your-data",
        pageAction="managed",
        cloudflareTaskType="token",
        pageData="your-page-data",
        userAgent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
    )
    balance = await client.get_balance()
    print("Balance:", balance)
    result = await client.solve_captcha(turnstile_request)
    print("Solution:", result)
asyncio.run(solve_turnstile_challenge())
python
import asyncio
from capmonstercloudclient import CapMonsterClient, ClientOptions
from capmonstercloudclient.requests import TurnstileRequest
from capmonstercloudclient.requests.proxy_info import ProxyInfo
API_KEY = "YOUR_API_KEY"
async def main():
    client = CapMonsterClient(options=ClientOptions(api_key=API_KEY))
    # Cloudflare cf_clearance можно решить только через ваш собственный прокси
    proxy = ProxyInfo(proxyType="http", proxyAddress="123.45.67.89", proxyPort=8080, proxyLogin="username", proxyPassword="password")
    turnstile_request = TurnstileRequest(
        websiteURL="https://yourwebsite.com/page-with-cf-challenge",
        websiteKey="your-website-key",
        cloudflareTaskType="cf_clearance",
        proxy=proxy,
        htmlPageBase64="your_html_page_base64",
        userAgent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
    )
    balance = await client.get_balance()
    print("Balance:", balance)
    result = await client.solve_captcha(turnstile_request)
    print("Solution:", result)
asyncio.run(main())
Node.js
javascript
const { CapMonsterCloudClientFactory, ClientOptions, TurnstileRequest } = require("@zennolab_com/capmonstercloud-client");
const API_KEY = "YOUR_API_KEY";
(async () => {
  const client = CapMonsterCloudClientFactory.Create(new ClientOptions({ clientKey: API_KEY }));
  // Базовый пример без прокси: CapMonster Cloud автоматически использует свои прокси
  const turnstileRequest = new TurnstileRequest({
    websiteURL: "https://yourwebsite.com/page-with-cf-challenge",
    websiteKey: "your-website-key",
    data: "your-data",
    pageAction: "managed",
    cloudflareTaskType: "token",
    pageData: "your-page-data",
    userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
  });
  const balance = await client.getBalance();
  console.log("Balance:", balance);
  const result = await client.Solve(turnstileRequest);
  console.log("Solution:", result.solution);
})();
javascript
const { CapMonsterCloudClientFactory, ClientOptions, TurnstileRequest } = require("@zennolab_com/capmonstercloud-client");
const API_KEY = "YOUR_API_KEY";
async function solveTurnstileCfClearance() {
  const client = CapMonsterCloudClientFactory.Create(new ClientOptions({ clientKey: API_KEY }));
  // Cloudflare cf_clearance можно решить только через ваш собственный прокси
  const proxy = { proxyType: "http", proxyAddress: "123.45.67.89", proxyPort: 8080, proxyLogin: "username", proxyPassword: "password" };
  const turnstileRequest = new TurnstileRequest({
    websiteURL: "https://yourwebsite.com/page-with-cf-challenge",
    websiteKey: "xxxxxxx",
    cloudflareTaskType: "cf_clearance",
    proxy,
    htmlPageBase64: "your_html_page_base64",
    userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
  });
  const balance = await client.getBalance();
  console.log("Balance:", balance);
  const result = await client.Solve(turnstileRequest);
  console.log("Solution:", result.solution);
}
solveTurnstileCfClearance().catch(console.error);
C#
csharp
using System;
using System.Threading.Tasks;
using Zennolab.CapMonsterCloud;
using Zennolab.CapMonsterCloud.Requests;
class Program
{
    static async Task Main(string[] args)
    {
        var clientOptions = new ClientOptions { ClientKey = "YOUR_API_KEY" };
        var cmCloudClient = CapMonsterCloudClientFactory.Create(clientOptions);
        // Базовый пример без прокси: CapMonster Cloud автоматически использует свои прокси
        var turnstileRequest = new TurnstileRequest
        {
            WebsiteUrl = "https://yourwebsite.com/page-with-cf-challenge",
            WebsiteKey = "your-website-key",
            Data = "your-data",
            PageAction = "managed",
            CloudflareTaskType = "token",
            PageData = "your-page-data",
            UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36"
        };
        var balance = await cmCloudClient.GetBalanceAsync();
        Console.WriteLine("Balance: " + balance);
        var turnstileResult = await cmCloudClient.SolveAsync(turnstileRequest);
        Console.WriteLine("Solution: " + turnstileResult.Solution.Value);
    }
}
csharp
using System;
using System.Threading.Tasks;
using Zennolab.CapMonsterCloud;
using Zennolab.CapMonsterCloud.Requests;
class Program
{
    static async Task Main(string[] args)
    {
        var clientOptions = new ClientOptions { ClientKey = "YOUR_API_KEY" };
        var cmCloudClient = CapMonsterCloudClientFactory.Create(clientOptions);
        // Cloudflare cf_clearance можно решить только через ваш собственный прокси
        var turnstileRequest = new TurnstileRequest
        {
            WebsiteUrl = "https://yourwebsite.com/page-with-cf-challenge",
            WebsiteKey = "your-website-key",
            CloudflareTaskType = "cf_clearance",
            HtmlPageBase64 = "your_html_page_base64",
            UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
            Proxy = new ProxyContainer("123.45.67.89", 8080, ProxyType.Http, "username", "password")
        };
        var balance = await cmCloudClient.GetBalanceAsync();
        Console.WriteLine("Balance: " + balance);
        var turnstileResult = await cmCloudClient.SolveAsync(turnstileRequest);
        Console.WriteLine("Solution: " + turnstileResult.Solution.Clearance);
    }
}

Для low-code-сценариев используйте официальную ноду n8n от CapMonster Cloud.

Как использовать cookie cf_clearance в запросах

text
GET https://example.com/protected-page
User-Agent: <userAgent from the task>
Cookie: cf_clearance=<value>
тот же прокситот же User-Agentcookie не истекла

Передавайте полученное значение в заголовке Cookie: cf_clearance=<value> при обычных HTTP-запросах или устанавливайте его в контексте браузера перед повторным обращением к защищённому URL. В официальных примерах один и тот же прокси и один и тот же User-Agent используются, чтобы загрузить страницу, решить задачу и отправить запрос с cookie.

В Selenium, Playwright или Puppeteer установите cookie собственным методом фреймворка до перехода на защищённый URL — тогда браузер откроет страницу без повторной проверки. Если вы запрашивали токен, передайте его в callback-функцию проверки на странице.

Background

Ошибки Cloudflare Challenge и как их исправить

Большинство ошибок Cloudflare Challenge связано с истёкшей cookie cf_clearance, не принятым прокси или устаревшими параметрами страницы. В каждой карточке ниже — ошибка и способ её исправить.
Bug Icon

Повторная проверка или 403 после решения

В запросе нет действующей cookie cf_clearance, срок cookie истёк или Cloudflare повторно проверил сессию (Precursor clearance). Запросите новую cookie.
Bug Icon

Прокси или User-Agent отличаются от задачи

При запросе защищённой страницы используйте тот же прокси и тот же userAgent, что и в задаче, — как в официальных примерах. Cloudflare также указывает, что Managed Challenge, решённый с другого IP, чем тот, которому он был выдан, недействителен и может привести к циклу проверок — см. документацию Cloudflare (EN).
Bug Icon

Истёк срок cookie

Cookie действует ограниченное время. Долго работающий скрипт должен заново решить проверку после его истечения.
Bug Icon

Прокси не принят

Используйте http, https, socks4 или socks5.
Bug Icon

Устаревшие параметры страницы

Некоторые значения меняются при каждом рендере страницы проверки. Извлекайте их непосредственно перед созданием задачи.

Частые вопросы о Cloudflare Challenge

Что такое Cloudflare Challenge?

Cloudflare Challenge — это промежуточная проверка, которую Cloudflare показывает перед доступом к защищённой странице, если правило WAF, система Bot Management или ограничение частоты запросов сочли запрос подозрительным (например, по TLS-отпечатку, репутации IP или поведенческим сигналам). Пока идёт проверка, посетитель видит промежуточную страницу «Just a moment…». Если проверка пройдена успешно, Cloudflare выдаёт cookie cf_clearance — она привязана к посетителю и устройству и действует ограниченное время — после чего браузер получает доступ к исходной странице.

Чем отличаются JS Challenge, Managed Challenge и Turnstile?

Все три опираются на сигналы браузера на стороне клиента. JS Challenge (неинтерактивная проверка) выполняется в фоне, обычно меньше чем за пять секунд; если она не пройдена, Cloudflare показывает другую страницу проверки. В Managed Challenge Cloudflare сам выбирает проверку по характеристикам запроса и сигналам браузера, вплоть до интерактивного шага. Turnstile — встраиваемый виджет, который возвращает токен для проверки через Siteverify API; с дополнительной функцией pre-clearance он может выдать и cookie cf_clearance.

Почему постоянно появляется Cloudflare CAPTCHA, страница проверки или ошибка 403?

Повторная проверка или 403 означают, что в запросе нет действующей cookie cf_clearance, её срок истёк или запрос идёт не от того посетителя или устройства, для которого она была выпущена. Даже действующая cookie не гарантирует доступ: Cloudflare ведёт Precursor clearance — непрерывную переоценку поведения сессии, которая может понизить или сбросить уровень допуска и вызвать повторную проверку, если трафик начинает выглядеть подозрительно.

Как CapMonster Cloud решает Cloudflare Challenge?

CapMonster Cloud решает задачу асинхронно через два вызова API: createTask с параметрами задачи и последующий опрос getTaskResult до готовности решения. В зависимости от типа задачи сервис возвращает либо токен — его подставляют в callback без прокси, — либо cookie cf_clearance, для которой прокси обязателен. Полученное значение вы передаёте в заголовке Cookie: cf_clearance=<value> обычных HTTP-запросов или устанавливаете в контексте браузера — после этого защищённая страница открывается без ручного прохождения проверки.

Как решить Cloudflare Challenge в своём проекте?

Отправьте POST-запрос на createTask с вашим clientKey (ключ API) и параметрами задачи, дождитесь готовности результата через опрос getTaskResult (до статуса ready), затем используйте полученный токен или cookie в HTTP-клиенте или браузерной автоматизации. Для готовых интеграций используйте официальные SDK в репозиториях CapMonster Cloud на GitHub — они оборачивают цикл createTask / getTaskResult в один вызов.

Нужен ли прокси для решения Cloudflare Challenge?

Прокси обязателен только для задачи, которая возвращает cookie cf_clearance. В официальных примерах тот же прокси затем используется и для следующих запросов. Для результата в виде токена прокси не нужен — по умолчанию CapMonster Cloud использует встроенные прокси (если вы разрешаете доступ по IP, добавьте 65.21.190.34). Поддерживаемые типы: http, https, socks4, socks5; прозрачные прокси и прокси на локальных машинах не допускаются.

Можно ли использовать сервис решения Cloudflare Challenge с n8n или Selenium?

Да. Для n8n есть официальная нода CapMonster Cloud — устанавливается из интерфейса или через npm install @zennolab_com/n8n-nodes-capmonstercloud на self-hosted инстансах. В остальных случаях сначала ваш код делает обычный HTTP-запрос к API CapMonster (через requests, axios или любой другой HTTP-клиент), а затем результат передаётся в браузерный фреймворк (Selenium, Playwright, Puppeteer и т.п.) его собственным методом. Cookie cf_clearance нужно установить этим методом до перехода на защищённый URL — тогда браузер откроет страницу уже с валидной проверкой, без повторного челенджа.

Законно ли решать Cloudflare Challenge автоматизированно?

Решение Cloudflare Challenge — техническая операция, и её правомерность зависит от того, как используется доступ, а не от самого инструмента. CapMonster Cloud предназначен для легальной автоматизации — тестирования, мониторинга, сбора общедоступных данных, — а ответственность за соответствие законодательству и Условиям использования целевого ресурса лежит на пользователе.

CapMonster Cloud

Мы не гарантируем стопроцентную успешность распознавания: тип капчи и конфигурация целевого ресурса могут измениться в любой момент. Фактическая скорость и успешность решения зависят от целевого сайта, нагрузки на сервер и условий сети.

Cloudflare — товарный знак Cloudflare, Inc. CapMonster Cloud не связан с Cloudflare и не одобрен этой компанией. Сервис предназначен для работы с публично доступными данными, тестирования своих сайтов или сайтов, которые вам разрешено тестировать, распознавания изображений и обеспечения доступности. Сбор чужих данных за логином или платным доступом без разрешения запрещён; на ваши собственные аккаунты это не распространяется. Правовой режим своих данных вы определяете сами до начала работы.