- Notifications
You must be signed in to change notification settings - Fork31
Furry/2captcha
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
2captcha is a service that solves many different types of captchas, this library serves as a wrapper around their API to bring easy, promise-based functionality to NodeJS. This libary specilizes in concurrent solves, and bulk-api usage.
- Promise based 2captcha solving
- Browser & NodeJS Support
- Uses node-fetch, a light weight http library
- Fluent typings & TS support
- Account Interaction
- Invalid Captcha reporting
- Proxy Support
Currently supports:
- google-recaptcha (v2 / v3),
- hcaptcha,
- FunCaptcha,
- base64 image captchas
Account InteractionBase64 image supportDocumentation Site- Built-in Rate-Limit handling
Proxy supportInvalid-Captcha reporting support- And many other things.
npm install 2captcha
yarn add 2captcha
Recaptcha,
constCaptcha=require("2captcha")// A new 'solver' instance with our API keyconstsolver=newCaptcha.Solver("<Your 2captcha api key>")/* Example ReCaptcha Website */solver.recaptcha("6Ld2sf4SAAAAAKSgzs0Q13IZhY02Pyo31S2jgOB5","https://patrickhlauke.github.io/recaptcha/").then((res)=>{console.log(res)}).catch((err)=>{console.error(err.message)})
Image,
constCaptcha=require("2captcha")constfs=require("fs")constsolver=newCaptcha.Solver("<Your 2captcha api key>")// Read from a file as base64 textsolver.imageCaptcha(fs.readFileSync("./captcha.png","base64")).then((res)=>{// Logs the image textconsole.log(res)}).catch((err)=>{console.error(err.message)})
Proxy,
constCaptcha=require("2captcha")constsolver=newCaptcha.Solver("<Your 2captcha api key>")solver.recaptcha("6Ld2sf4SAAAAAKSgzs0Q13IZhY02Pyo31S2jgOB5","https://patrickhlauke.github.io/recaptcha/",{proxy:"login:password@21.214.43.26",// The (Username : Password @ Address) of our chosen proxyproxytype:"HTTP"// The 'Type' of proxy, http, https, socks, ect.}).then((res)=>{console.log(res)}).catch((err)=>{console.error(err.message)})
The latest version of the code base will always be under the 'next' branch!
- All pull requiests must provide a valid reason for the change or implementation
- AllCORE CHANGES require an issue with reasoning made before a PR will even be addressed.
- All PR's must follow the general structure of the code base
- If you have questions, feel free to make an issue and i'll get to it right away!