Уведомление об использовании файлов cookie

Этот сайт использует cookie. Файлы cookie запоминают вас, поэтому мы можем предоставить вам персонализированные услуги. Подробнее.

Автоматическое решение и обход капчи на JavaScript

Автоматическое решение и обход капчи на JavaScript

После интеграции API для обхода капчи в ваше приложение на Node.js, у вас появляется масштабируемая основа для разработки автоматизированных решений. Используйте модуль JS NPM (NodeJS), чтобы оптимизировать рабочий процесс и повысить эффективность задач по автоматизации. API позволяет обходить любые типы капч, включая reCAPTCHA, hCaptcha, Arkose Labs Funcaptcha, Cloudflare Turnstile.

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

Быстрый старт

Установка

Пакет скриптов можно установить с помощью установщика пакетов или вручную

Node Package Manager

Для автоматической установки пакета библиотек необходимо воспользоваться стандартным решением для Node.js пакетов - NPM. Скачайте его по ссылке и инсталлируйте по инструкции. После установки приложения используйте команду:

npm i @2captcha/captcha-solver 

Примеры кода, а также библиотеки и модули для интеграции с нашим API вы также можете найти в репозитории на GitHub.

Конфигурация

Описание всех необходимых параметров для конфигурирования установленного пакета

Экземпляр класса Solver можно создать вот так:

import { Solver } from '@2captcha/captcha-solver'
const solver = new Captcha.Solver("<Your 2captcha api key>")

Решение капчи

Когда вы отправляете любую графическую капчу, вы можете передавать дополнительные параметры, которые помогут работникам 2Captcha решить ее быстро и правильно.

Опции капчи
ОпцияЗначение по умолчаниюОписание
numeric-определяет, содержит ли капча числовые или другие символы, подробнее см. в документации по API
min_len-минимальная длина ответа
max_len-максимальная длина ответа
phrase-определяет, содержит ли ответ несколько слов или нет
regsense-определяет, чувствителен ли ответ к регистру
calc-определяет капчу, которая требует расчета
lang-определяет язык капчи, смотрите список поддерживаемых языков
textinstructions-подсказка или текст задачи, показываемый работникам с помощью капчи
simpleCaptcha

Чтобы обойти обычную капчу (искаженный текст на изображении), используйте следующий метод. Этот метод также можно использовать для распознавания любого текста на изображении.

solver.imageCaptcha({
    body: 'data:image/png;base64,iVBORw0KGgoAAAANSUhE...',
})
.then((res) => {
  // Logs the image text
  console.log(res);
})
recaptchaV2

Используйте этот метод для решения reCAPTCHA V2 и получения токена для обхода защиты

solver.recaptcha({
    pageurl: 'https://2captcha.com/demo/recaptcha-v2',
    googlekey: '6LfD3PIbAAAAAJs_eEHvoOl75_83eXSqpPSRFJ_u'
  })
.then((res) => {
 console.log(res);
})
recaptchaV3

Этот метод позволяет обходить reCAPTCHA V3 и возвращает токен

solver.recaptcha({
    pageurl: 'https://2captcha.com/demo/recaptcha-v3',
    googlekey: '6Lcyqq8oAAAAAJE7eVJ3aZp_hnJcI6LgGdYD8lge',
    version: "v3",
    min_score: "0.4",
    action: 'demo_action'
})
.then((res) => {
  console.log(res);
})
funCaptcha

Метод решения FunCaptcha (Аркоселабс). Возвращает токен для обхода капчи

solver.funCaptcha({
    pageurl: "https://www.site.com/page/funcaptcha",
    publickey: "823480F4-6844-FFA1-ED4E-5877CA1F1EG0"
  })
  .then((res) => {
    console.log(res);
  })
geeTest

Метод решения капчи головоломки GeeTest. Возвращает набор токенов в формате JSON

solver.geetest({ 
    pageurl: 'https://2captcha.com/demo/geetest',
    gt: '81388ea1fc187e0c335c0a8907ff2625',
    challenge: '12345678abc90123d45678ef90123a456b'
  })
  .then((res) => {
    console.log(res);
  })
hCaptcha

Используйте этот метод для решения hCaptcha. Возвращает токен для обхода капчи

solver.hcaptcha({
    pageurl: "https://www.site.com/page/",
    sitekey: "10000000-ffff-ffff-ffff-000000000001"
  })
  .then((res) => {
    console.log(res);
  })
capy

Токен-основанный способ обхода капчи Capy puzzle

solver.capyPuzzle({
    pageurl: "http://mysite.com/",
    captchakey: "PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v"
})
.then((res) => {
    console.log(res);
})
clickCaptcha

Метод ClickCaptcha возвращает координаты точек на изображении капчи. Может использоваться, если вам нужно щелкнуть определенные точки на изображении.

solver.coordinates({
    body: 'data:image/png;base64,iVBORw0KGgoAAAANSUhE...',
    textinstructions: 'Select all photos containing the boat'
 })
.then((res) => {
    console.log(res);
})

Другие методы

Дополнительные допустимые методы применяемые в процессе работы основных скриптов

send / get

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

solver.imageCaptcha({
    body: 'data:image/png;base64,iVBORw0KGgoAAAANSUhE...',
})
.then((res) => {
  // Logs the result
  console.log(res);
})

balance

Используйте этот метод, чтобы получить баланс своего аккаунта.

solver.balance()
.then((res) => {
    console.log(res)
})

report

Используйте этот метод, чтобы сообщить о правильном или неправильном решении капчи.

solver.goodReport('7031846604') // captcha solved correctly
solver.badReport('7031854546')  // captcha solved incorrectly

Обработка ошибок

Возможные варианты стандартных ошибок возвращаемые сервисом при обработке запросов

В случае ошибки решатель капчи выдает исключение. Важно правильно обращаться с этими случаями. Мы рекомендуем использовать try/catch или .catch() для обработки исключений

solver.imageCaptcha({
    body: 'data:image/png;base64,iVBORw0KGgoAAAANSUhE...',
})
.then((res) => {
  // Logs the result
  console.log(res);
})
.catch((err) => {
  // Error handling
  console.log(err);
})

Другие языки для интеграции с API сервиса

  • Пакет PHP для интеграции с API сервиса

  • Пакет Python для интеграции с API сервиса

  • Пакет Java для интеграции с API сервиса

  • Пакет C# для интеграции с API сервиса

  • Пакет Golang для интеграции с API сервиса

  • Пакет Ruby для интеграции с API сервиса