Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Решение капчи Yandex SmartCaptcha от Яндекса с использованием библиотеки Puppeteer и сервиса 2captcha. Демо автоматизации обхода капчи Yandex Smart Captcha.

License

NotificationsYou must be signed in to change notification settings

dzmitry-duboyski/solving-yandex-smart-captcha-using-puppeteer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Описание

В этом примере показывается как автоматизировать решение капчи Yandex SmartCaptcha на демо странице капчиhttps://captcha-api.yandex.ru/demo. Для автоматизации используется библиотекаPuppeteer и сервис решения капч2captcha.com. Для корректной работы примера нуженAPIKEY, для этого необходимо иметь аккаунт в сервисе2captcha.com,APIKEY отображается в личном кабинете.

Установка

Клонирование репозитория

git clone https://github.com/dzmitry-duboyski/solving-yandex-smart-captcha-using-puppeteer.git

Установка зависимостей

npm install

Настройка

Установить вашAPIKEY в файле./index.js#L3

APIKEY указан в личном кабинете аккаунта2captcha.com. Перед копированиемAPIKEY, проверьте что в вашем аккаунте выбрана роль"разработчик".

Запуск

npm run start

Код примера

importpuppeteerfrom"puppeteer";import{Solver}from"2captcha-ts";constsolver=newSolver("<Your 2captcha APIKEY>");;(async()=>{constbrowser=awaitpuppeteer.launch({headless:false,});constpage=awaitbrowser.newPage();// Открыть необходимую страницу с капчей// Open target pageawaitpage.goto("https://captcha-api.yandex.ru/demo");awaitpage.waitForSelector("#captcha-container");awaitpage.waitForSelector("iframe[data-testid='checkbox-iframe'");// Заполнить поля для ввода// Enter dataawaitpage.$eval("#name",(el)=>(el.value=""));awaitpage.type("#name","Иван Иванов",{delay:100});// Получить параметр `sitekey` с текущей страницы// Get the `sitekey` parameter from the current pageconstsitekey=awaitpage.evaluate(()=>{returndocument.querySelector("#captcha-container").getAttribute("data-sitekey");});// Отправить капчу в сервис 2captcha.com для получения решения// Send a captcha to the 2captcha service to get a solutionconstres=awaitsolver.yandexSmart({pageurl:"https://captcha-api.yandex.ru/demo",sitekey:sitekey,});console.log(res);// Полученное решение// The resulting solutionconstcaptchaAnswer=res.data;// Использовать полученное решение на странице// Use the resulting solution on the pageconstsetAnswer=awaitpage.evaluate((captchaAnswer)=>{document.querySelector("input[data-testid='smart-token']").value=captchaAnswer;},captchaAnswer);// Нажать на кнопку 'Submit', для проверки решения капчи// Click on the 'Submit' button to check the captcha solutionawaitpage.click("#smartcaptcha-demo-submit");awaitpage.waitForSelector(".greeting");console.log("Капча успешно решена!!!");console.log("Captcha solved successfully!!!");browser.close();})();

Исходный код примера доступен в файлеindex.js

Important

Если вам необходимо решать капчу яндекса которую необходимо кликать, то вам необходимо использовать методCoordinates API v1 \Coordinates API v2, подробнее описано встатье.

Дополнительные ссылки:

About

Решение капчи Yandex SmartCaptcha от Яндекса с использованием библиотеки Puppeteer и сервиса 2captcha. Демо автоматизации обхода капчи Yandex Smart Captcha.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp