Автоматическое решение и обход капчи на JavaScript
После интеграции API для обхода капчи в ваше приложение на Node.js, у вас появляется масштабируемая основа для разработки автоматизированных решений. Используйте модуль JS NPM (NodeJS), чтобы оптимизировать рабочий процесс и повысить эффективность задач по автоматизации. API позволяет обходить любые типы капч, включая reCAPTCHA, 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>")
Решение капчи
Когда вы отправляете любую графическую капчу, вы можете передавать дополнительные параметры, которые помогут работникам ruCaptcha решить ее быстро и правильно.
Опции капчи
Опция | Значение по умолчанию | Описание |
---|---|---|
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);
})