Автоматическое решение и обход капчи на JavaScript
После интеграции API для обхода капчи в ваше пр иложение на Node.js, у вас появляется масштабируемая основа для разработки автоматизированных решений. Используйте SDK JS NPM (NodeJS), чтобы оптимизировать рабочий процесс и повысить эффективность задач по автоматизации. API позволяет обходить любые типы капч, включая reCAPTCHA, Arkose Labs Funcaptcha, Cloudflare Turnstile.
Пример кода по обходу демонстрирует, как легко и эффективно внедрить данное решение в вашу систему. Применяя данный пример, можно легко обходить капчи и автоматизировать задачи. Особенно актуально для разработки сервисов и приложений. Обходите капчи автоматически.
Быстрый стартУстановка
Пакет скриптов можно установить с помощью установщика пакетов или вручную
Node Package Manager
Для автоматической установки пакета библиотек необходимо воспользоваться стандартным решением для Node.js пакетов - NPM. Скачайте его по ссылке и инсталлируйте по инструкции. После установки приложения используйте команду:
npm i @2captcha/captcha-solver Примеры кода, а также библиотеки и SDK для интеграции с нашим 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 | - | подсказка или текст задачи, показываемый работникам с помощью капчи |
Чтобы обойти обычную капчу (искаженный текст на изображении), используйте следующий метод. Этот метод также можно использовать для распознавания любого текста на изображении.
solver.imageCaptcha({
body: 'data:image/png;base64,iVBORw0KGgoAAAANSUhE...',
})
.then((res) => {
// Logs the image text
console.log(res);
})Используйте этот метод для решения reCAPTCHA V2 и получения токена для обхода защиты
solver.recaptcha({
pageurl: 'https://2captcha.com/demo/recaptcha-v2',
googlekey: '6LfD3PIbAAAAAJs_eEHvoOl75_83eXSqpPSRFJ_u'
})
.then((res) => {
console.log(res);
})Этот метод позволяет обходить 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 (Аркоселабс). Возвращает токен для обхода капчи
solver.funCaptcha({
pageurl: "https://www.site.com/page/funcaptcha",
publickey: "823480F4-6844-FFA1-ED4E-5877CA1F1EG0"
})
.then((res) => {
console.log(res);
})Метод решения капчи головоломки GeeTest. Возвращает набор токенов в формате JSON
solver.geetest({
pageurl: 'https://2captcha.com/demo/geetest',
gt: '81388ea1fc187e0c335c0a8907ff2625',
challenge: '12345678abc90123d45678ef90123a456b'
})
.then((res) => {
console.log(res);
})Токен-основанный способ обхода капчи Capy puzzle
solver.capyPuzzle({
pageurl: "http://mysite.com/",
captchakey: "PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v"
})
.then((res) => {
console.log(res);
})Метод 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);
})