搜尋套件、儲存庫與 APP 分類

captcha_solver 封面
套件詳情v1.0.4

captcha_solver

captcha_solver 是一種用於解決各種類型驗證碼的服務(帶文字的圖片驗證碼、Recaptcha v2/v3 企業版/非企業版、Funcaptcha Arcoselabs、GeeTest 和 hCaptcha)

AndroidiOSmacOSWindowsLinux
近 30 天下載
55
喜歡數
30
Pub 分數
140

安裝套件

flutter pub add captcha_solver

套件介紹

根據套件公開資料產生的選型評估,僅供參考。

captcha_solver 套件是一個專為 Flutter/Dart 設計的服務,旨在自動化解決各種類型的驗證碼,包括圖像式文字驗證碼、Recaptcha v2/v3(企業版與非企業版)、Arcoselabs 的 Funcaptcha、GeeTest 以及 hCaptcha。該套件可無縫整合至 Android、iOS、macOS、Windows 及 Linux 的跨平台應用中。透過乾淨的 API 界面利用外部服務,簡化繞過機器人防護的流程。適用於測試、自動化或需自動解碼驗證碼的情境,支援多種驗證碼供應商,並在各平台提供一致的處理方式。

適用情境

  • Web 表單的自動化測試
  • 機器人驅動的資料抓取
  • 開發環境中的使用者驗證繞過
  • 跨平台驗證碼解析
  • 簡化自動化工作流程

主要特色

  • 支援多種驗證碼類型
  • 跨平台相容性
  • 簡單 API 結合
  • 即時驗證碼解決
  • 安全的令牌處理

適合對象

  • 開發自動化工具的開發者
  • 需要驗證碼繞過的測試工程師
  • 需要大量表單提交的應用程式
  • 安全研究人員測試防護措施
  • 使用多個驗證碼提供者的工作項目

使用建議

  • 需要外部服務提供者
  • 可能違反某些網站的服務條款
  • 依賴第三方的可靠性
  • 不適合用於生產環境的安全強制執行
  • 潛在的法律和倫理問題

原始 README

以下為關聯原始碼儲存庫的 README 原文快照,最新內容請造訪原始碼儲存庫。

SCRAPTCHA.com

Captcha Solver

ScreenShot

To use the captcha solution you need to register on the resource and top up your balance - https://dashboard.scraptcha.com/fr/dashboard Documentation -https://scraptcha.com/documentation/

Features

Whether you need to autofill a large number of forms, for various purposes: web scraping, making unlimited edition purchases, performing repetitive tasks online, etc. But you quickly find yourself confronted with the CAPTCHAs resolution (which stands for Completely Automated Public Turing Test to tell Computers and Humans Apart) to prove that you are indeed a human and not a robot.

The solution to solve these CAPTCHAs and hijack them, but how? This is where CAPTCHas and reCAPTCHAs resolution services come in, such as scraptcha.com, which is an infallible, fast and efficient resolution service.

Getting started

You should ensure that you add the router as a dependency in your flutter project.

dependencies:
  captcha_solver: ^1.0.4

Usage

Image to Text

A normal CAPTCHA is an image containing distorted text that can only be read by humans. to solve this type of CAPTCHA the user is required to enter the text of the image. You can use imageMemoryToText() function for local images or imageLinkToText() for images from the site. YOUR_API_KEY : You can find the API key here ScreenShot

import 'package:captcha_solver/captcha_solver.dart';

void main() async {

  /// Initiate query Properties
  String apiKey = 'YOUR_API_KEY';
  String imageMemory = 'lib/captcha.jpg';
  String imageLink = 'https://api.vk.com/captcha.php?sid=1';
  /// Initiate CaptchaSolver
  CaptchaSolver captchaSolver = CaptchaSolver(apiKey);
  /// Example of the request
  Map inputs = {
    "clientKey": apiKey,
    "task": {
      "type": "ImageToTextTask",
      "body": imageMemory // or imageLink
    }
  };
  /// Get captcha solution
  Map response = await captchaSolver.imageMemoryToText(inputs); // Or imageLinkToText()
  print('response: $response');
  if(response['status']=='ready') {
    print(response['solution']['text']);
  }
}

reCAPTCHA v2

reCAPTCHA v2 requires the user to check the "I'm not a robot" box and can offer them an image recognition challenge. YOUR_WEBSITE_KEY : reCAPTCHA website key - for more details : https://scraptcha.com/documentation/ YOUR_API_KEY : You can find the API key here ScreenShot

import 'package:captcha_solver/captcha_solver.dart';

void main() async {
  /// Initiate query Properties
  String apiKey = 'YOUR_API_KEY';
  String websiteURL = 'http://mywebsite.com/recaptcha/test.php';
  String websiteKey = 'YOUR_WEBSITE_KEY';
  /// Initiate CaptchaSolver
  CaptchaSolver captchaSolver = CaptchaSolver(apiKey);
  /// Example of the request
  Map inputs = {
    "clientKey": apiKey,
    "task": {
      "type": "RecaptchaV2TaskProxyless",
      "websiteURL": websiteURL,
      "websiteKey": websiteKey,
      "isInvisible": false
    }
  };
  /// Get captcha solution
  Map response = await captchaSolver.recaptcha(inputs);
  print('response: $response');
  if(response['status']=='ready') {
    print(response['solution']['gRecaptchaResponse']);
  }
}


reCAPTCHA V3

reCAPTCHA v3 is somewhat similar to reCAPTCHA V2. reCAPTCHA V3 works in the background, does not require user interaction and generates a score based on user behavior. The higher the score, the more likely the user is human.

ScreenShot

import 'package:captcha_solver/captcha_solver.dart';

void main() async {

  /// Initiate query Properties
  String apiKey = 'YOUR_API_KEY';
  String websiteURL = 'http://mywebsite.com/recaptcha/test.php';
  String websiteKey = 'YOUR_WEBSITE_KEY';
 /// Initiate CaptchaSolver
  CaptchaSolver captchaSolver = CaptchaSolver(apiKey);
/// Example of the request
  Map inputs = {
  "clientKey": apiKey,
  "task": {
  "type": "RecaptchaV3TaskProxyless", // type of captcha
  "websiteURL": websiteURL,
  "websiteKey": websiteKey,
  "minScore": 0.3,
  "pageAction": "verify",
  "isEnterprise": false
  }
};
  /// Get captcha solution
  Map response = await captchaSolver.recaptcha(inputs);
  print('response: $response');
  if(response['status']=='ready') {
    print(response['solution']['gRecaptchaResponse']);
  }
}

FunCAPTCHA - Arkose Labs

This type of task solves the arkoselabs.com conundrum in our worker browsers. You submit the public key and the website address then you will receive a token when the task is completed. This is the token you will need to submit your forms with Arkoselabs captcha. ScreenShot


import 'package:captcha_solver/captcha_solver.dart';

void main() async {

  /// Initiate query Properties
  String apiKey = 'YOUR_API_KEY';
  String websiteURL = 'https://account.battle .net/creation/flow/creation-full';
  String websitePublicKey = 'YOUR_WEBSITE_KEY';
 /// Initiate CaptchaSolver
  CaptchaSolver captchaSolver = CaptchaSolver(apiKey);
/// Example of the request
  Map inputs = {
    "clientKey": "YOUR_API_KEY",
    "task": {
      "type": "FunCaptchaTaskProxyless",
      "websitePublicKey": websitePublicKey,
      "websiteURL": websiteURL
  }
};
  /// Get captcha solution
  Map response = await captchaSolver.recaptcha(inputs);
  print('response: $response');
  if(response['status']=='ready') {
    print(response['solution']['token']);
  }
}

hCAPTCHA

HCAPTCHA is a most popular reCAPTCHA alternative. The properties of this task are the same as reCAPTCHA except for the type property. ScreenShot

import 'package:captcha_solver/captcha_solver.dart';

void main() async {
  /// Initiate query Properties
  String apiKey = 'YOUR_API_KEY';
  String websiteURL = 'https://hcaptcha.com/';
  String websiteKey = 'YOUR_WEBSITE_KEY';
  /// Initiate CaptchaSolver
  CaptchaSolver captchaSolver = CaptchaSolver(apiKey);
  /// Example of the request
  Map inputs = {
    "clientKey": apiKey,
    "task": {
      "type": "HCaptchaTaskProxyless",
      "websiteURL": websiteURL,
      "websiteKey": websiteKey,
  
    }
  };
  /// Get captcha solution
  Map response = await captchaSolver.recaptcha(inputs);
  print('response: $response');
  if(response['status']=='ready') {
    print(response['solution']['gRecaptchaResponse']);
  }
}


Additional information

Scraptcha uses two methods to solve its CAPTCHAs: A CAPTCHA solving service based on these humans: The service has hired human workers to solve CAPTCHAs, which are constantly online. When you submit your CAPTCHA, Scraptcha passes it on to the human workers who solve the text and send it back. OCR (optical character recognition) solutions In this method, captcha solving is done automatically using OCR technology.

for more information : https://scraptcha.com/documentation/

所屬分類

依賴

依賴清單 1 項

原始碼儲存庫

使用此套件的專案

暫無相關資料。