Skip to content

Latest commit

 

History

History
104 lines (76 loc) · 2.62 KB

readme.md

File metadata and controls

104 lines (76 loc) · 2.62 KB

🤖 CapSolver ✔️

An API wrapper for CapSolver.com written in Node.js

Table of Contents

Installing

Package manager

Using npm:

npm install node-capsolver

Using yarn:

yarn add node-capsolver

Examples

const CapSolver = require('node-capsolver')
const fs = require('fs')

const solver = new CapSolver("CAI-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", {
    verbose: true, // Optional
    verboseIdentifier: "[Image Solve]"  // Optional & not required when verbose: true
})

solver.getBalance().then(data => {
    if (data?.balance > 0) {
        solver.solve({
            type: "ImageToTextTask",
            body: fs.readFileSync('captcha.png') // The library will automatically convert buffers into base64 strings for you
        }).then((task) => {
            console.log(task.solution.text)
        })
    } else {
        console.log("Insufficient balance.")
    }
})
const CapSolver = require('node-capsolver')
const axios = require("axios").default;
const { JSDOM } = require('jsdom');

(async () => {
    let demoURL = "https://www.google.com/recaptcha/api2/demo";
    let resp = await axios({
        method: "GET",
        url: demoURL,
    })

    const dom = new JSDOM(resp.data)
    const siteKey = dom.window.document.querySelector('#recaptcha-demo').getAttribute('data-sitekey');

    const handler = new CapSolver('CAI-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', {
        verbose: true // Optional
    })
    let b = await handler.getBalance();
    if (b.balance > 0) {
        let CapResponse = await handler.solve({
            type: 'ReCaptchaV2TaskProxyLess',
            websiteURL: demoURL,
            websiteKey: `${siteKey}`,
        })

        console.log(CapResponse)
    } else {
        console.log("Insufficient balance.")
    }
})();

API

In general, the CapSolver.solve() function is all you need. It combines createTask() and getTaskResult() into one, meaning you don't need to worry about anything else.

async CapSolver.solve(task)

async CapSolver.createTask(task)

async CapSolver.getTaskResult(taskId)

async CapSolver.feedbackTask(taskId, result)

async CapSolver.getBalance()

When using an IDE that supports JSDoc, you will get suggestions of properties the task supports. To get the best suggestions, specify the type first. For the general API, check the CapSolver.com documentation.