Skip to main content

Crate chaser_gt

Crate chaser_gt 

Source
Expand description

§chaser-gt

A high-performance Rust implementation of a Geetest v4 captcha solver.

§Features

  • Automatic Deobfuscation: Constants are automatically updated when Geetest releases new versions - no manual intervention required.
  • Multiple Captcha Types: Supports Slide, Gobang, Icon, and AI/Invisible captchas.
  • TLS Fingerprinting: Uses rquest for Chrome-like TLS fingerprinting.
  • Proxy Support: HTTP and SOCKS5 proxy support with authentication.
  • Async/Await: Built on Tokio for efficient concurrent captcha solving.

§Quick Start

use chaser_gt::{Geeked, RiskType};

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    // Create a solver for slide captcha
    let solver = Geeked::builder("your_captcha_id", RiskType::Slide)
        .build()
        .await?;

    // Solve the captcha
    let result = solver.solve().await?;

    println!("captcha_id: {}", result.captcha_id);
    println!("lot_number: {}", result.lot_number);
    println!("pass_token: {}", result.pass_token);
    println!("gen_time: {}", result.gen_time);
    println!("captcha_output: {}", result.captcha_output);

    Ok(())
}

§With Proxy

use chaser_gt::{Geeked, RiskType};

let solver = Geeked::builder("captcha_id", RiskType::Slide)
    .proxy("http://user:pass@proxy.example.com:8080")
    .build()
    .await?;

§Supported Captcha Types

  • RiskType::Slide - Slide puzzle captcha
  • RiskType::Gobang - Five-in-a-row puzzle
  • RiskType::Icon - Icon selection captcha (requires icon feature)
  • RiskType::Ai - AI/Invisible captcha
  • RiskType::Svg - SVG animated icon captcha (requires svg feature)

§Automatic Constant Updates

Unlike other implementations that require manual updates when Geetest changes their obfuscation, this library automatically:

  1. Checks for new Geetest script versions
  2. Deobfuscates the script to extract constants
  3. Caches the constants for future use

This means the library stays functional even when Geetest updates their anti-bot measures.

Re-exports§

pub use client::Geeked;
pub use client::GeekedBuilder;
pub use error::GeekedError;
pub use error::Result;
pub use models::RiskType;
pub use models::SecCode;

Modules§

client
Main Geeked client for solving Geetest v4 captchas.
crypto
Cryptography module for Geetest w parameter encryption.
deobfuscate
Auto-deobfuscation system for Geetest constants.
error
Error types for the chaser-gt library.
models
Data models for Geetest v4 captcha.
sign
W parameter generation and LotParser for Geetest captcha.
solvers
Captcha solvers for different Geetest risk types.

Functions§

init
Initialize the library.