Skip to content

DenimEvert/maxun-capsolver

Repository files navigation

🚀 Maxun + CapSolver: No-Code Web Scraping Integration

GitHub stars License CapSolver Maxun

Automate the impossible. Seamlessly bypass CAPTCHAs in your Maxun no-code scraping workflows using CapSolver's AI-powered solving engine.


📖 Overview

In the world of web data extraction, Maxun is a game-changer—an open-source, no-code platform that lets you train scraping robots visually. However, the biggest hurdle remains: CAPTCHAs.

This repository provides a production-ready integration between Maxun and CapSolver. By combining Maxun's ease of use with CapSolver's infrastructure-level CAPTCHA solving, you can build reliable, uninterrupted data pipelines.

✨ Key Features

  • 🤖 No-Code Simplicity: Leverage Maxun's visual builder for complex scraping tasks.
  • 🧠 AI-Powered Solving: Bypass reCAPTCHA (v2/v3), Cloudflare Turnstile, AWS WAF, and more via CapSolver.
  • 🛠️ Developer Friendly: Includes a robust TypeScript/Node.js SDK integration.
  • High Performance: Optimized polling and parallel execution patterns.
  • 🔒 Session Management: Handle pre-authentication and cookie-based bypasses.

🚀 Getting Started

1. Prerequisites

2. Installation

# Clone the integration examples
git clone https://github.com/capsolver/capsolver-maxun.git
cd capsolver-maxun

# Install dependencies
npm install

3. Environment Setup

Create a .env file in the root directory:

CAPSOLVER_API_KEY=your_capsolver_api_key
MAXUN_API_KEY=your_maxun_api_key
MAXUN_BASE_URL=https://app.maxun.dev/api/sdk # Or your local instance

🛠️ Usage Examples

The CapSolver Service

We provide a reusable CapSolverService to handle the asynchronous nature of CAPTCHA solving.

import { CapSolverService } from './services/capsolver';

const capSolver = new CapSolverService({ 
  apiKey: process.env.CAPSOLVER_API_KEY 
});

// Solve reCAPTCHA v2
const token = await capSolver.solveReCaptchaV2(targetUrl, siteKey);

Integration Pattern: Pre-Authentication

Since Maxun operates at a high level, the best practice is to solve the CAPTCHA and establish a session before running the robot.

// 1. Solve CAPTCHA
const token = await capSolver.solveReCaptchaV2(loginUrl, siteKey);

// 2. Get Session Cookies (Example)
const response = await axios.post(loginUrl, { 'g-recaptcha-response': token });
const cookies = extractCookies(response);

// 3. Run Maxun Robot with Cookies
const robot = await extractor
  .create('Authenticated Robot')
  .setCookies(cookies)
  .navigate(targetUrl)
  .run();

Tip

Check the examples/ directory for full implementations of Crawl, Scrape, and Extract patterns.


📊 Supported CAPTCHA Types

Type CapSolver Product Status
reCAPTCHA v2/v3 View Product ✅ Supported
Cloudflare Turnstile View Product ✅ Supported
AWS WAF CAPTCHA View Product ✅ Supported
GeeTest v3/v4 View Product ✅ Supported

💡 Best Practices

  1. Error Handling: Always implement retries with exponential backoff for network-related failures.
  2. Balance Monitoring: Use capSolver.checkBalance() to ensure your automated tasks don't fail due to insufficient funds.
  3. Token Caching: CAPTCHA tokens usually last for 90-120 seconds. Cache them to avoid redundant API calls.

🎁 Special Offer

Ready to scale? Sign up for CapSolver and use bonus code MAXUN for an extra 6% bonus on your first recharge!


📄 License

Distributed under the MIT License. See LICENSE for more information.

🤝 Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Built with ❤️ by the CapSolver Team

About

Bypassing Captcha in your Maxun no-code scraping workflows using CapSolver's AI-powered solving engine.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors