<h1>
2captcha
</h1>
<img src="https://discordapp.com/api/guilds/769020183540400128/widget.png?style=banner2" alt="Discord Banner 2"/>
A wrapper around the 2captcha API
Captcha Solvers
<center>
<b>CapSolver.com</b>
<br>
<a href="https://capsolver.com">
<img src="https://i.imgur.com/YaRmSt4.gif" alt="Capsolver's Banner">
</a>
</center>
Supporting all common and well known captcha types and a success rate of over 99%, CapSolver allows for affordable AI-based captcha solving with JS/TS clients as well as HTTP support. Their packages are extremely affordable for projects of any size, offering a free trial to test out their service.
<center>
<b>CapSolver.com</b>
<br>
<a href="https://capsolver.com">
<img src="https://i.imgur.com/YaRmSt4.gif" alt="Capsolver's Banner">
</a>
</center>
Motive
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.Features
- 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
Planned Features
Account InteractionBase64 image supportDocumentation Site- Built-in Rate-Limit handling
Proxy supportInvalid-Captcha reporting support- And many other things.
Install
npm install 2captcha
yarn add 2captcha
Usage
Recaptcha,const Captcha = require("2captcha")
// A new 'solver' instance with our API key
const solver = new Captcha.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,
const Captcha = require("2captcha")
const fs = require("fs")
const solver = new Captcha.Solver("<Your 2captcha api key>")
// Read from a file as base64 text
solver.imageCaptcha(fs.readFileSync("./captcha.png", "base64"))
.then((res) => {
// Logs the image text
console.log(res)
})
.catch((err) => {
console.error(err.message)
})
Proxy,
const Captcha = require("2captcha")
const solver = new Captcha.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 proxy
proxytype: "HTTP" // The 'Type' of proxy, http, https, socks, ect.
})
.then((res) => {
console.log(res)
})
.catch((err) => {
console.error(err.message)
})
Commit Guidelines
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
- All CORE 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!