Menu

حل رموز التحقق المُصورة

أضف رموز تحقق مصورة واستخرج النص المتواجد بداخلها. يمكن أن يتضمن النص أرقام وأحرف وأحرف خاصة ومسافات فقط. كما تدعم الرسوم المتحركة بتنسيق GIF بحجم يصل إلى 500 كيلوبايت. لا يتم دعم اختبارات رموز التحقق المخصصة مثل "اعثر على قطة في مجموعة الصور الظاهرة أمامك وادخل رقمها".

يتم حل جميع رموز الكابتشا في Anti Captcha بواسطة قوة عاملة بشرية فقط، دون أي ذكاء اصطناعي أو برامج التعرف الضوئي على الحروف (OCR). نحن نتصدى بنشاط لمحاولات الغش من قبل عمالنا لحلها باستخدام برامج OCR، وقد حظرنا ملايين حسابات العمال منذ عام 2007. نوظف العشرات من التكتيكات المختلفة لضمان الحضور البشري الحقيقي، وقياس جودة إدخال النصوص وتقييمها، ومكافأة العمال المخلصين. كان هدفنا دائماً تحقيق جودة التعرف على الصور بنسبة 100% لضمان رضا عملائنا وراحة بالهم.

Python
Node.js
Go
PHP
Java
C#
bash

كيفية حل رموز التحقق المًصورة في Python

#pip3 install anticaptchaofficial

from anticaptchaofficial.imagecaptcha import *

solver = imagecaptcha()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")

# Specify softId to earn 10% commission with your app.
# Get your softId here: https://anti-captcha.com/clients/tools/devcenter
solver.set_soft_id(0)

# optional parameters, see documentation for details
# solver.set_phrase(True)                      # 2 words
# solver.set_case(True)                        # case sensitivity
# solver.set_numeric(1)                        # only numbers
# solver.set_minLength(1)                      # minimum captcha text length
# solver.set_maxLength(10)                     # maximum captcha text length
# solver.set_math(True)                        # math operation result, for captchas with text like 50+5
# solver.set_comment("only green characters")  # comment for workers
# solver.set_language_pool("en")               # language pool

captcha_text = solver.solve_and_return_solution("captcha.jpeg")
if captcha_text != 0:
    print("captcha text "+captcha_text)
else:
    print("task finished with error "+solver.error_code)

كيفية حل رموز التحقق المًصورة في Node.js

// npm install @antiadmin/anticaptchaofficial
// https://github.com/anti-captcha/anticaptcha-npm

const ac = require("@antiadmin/anticaptchaofficial");
const fs = require('fs');

const captcha = fs.readFileSync('captcha.png', { encoding: 'base64' });

ac.setAPIKey('YOUR_API_KEY_HERE');

// Specify softId to earn 10% commission with your app.
// Get your softId here: https://anti-captcha.com/clients/tools/devcenter
ac.setSoftId(0);

// Additional flags, see documentation description
// ac.settings.phrase = true;                  // 2 words
// ac.settings.case = true;                    // case sensitivity
// ac.settings.numeric = 1;                    // only numbers
// ac.settings.comment = "only green letters"; // text comment for workers
// ac.settings.math = true;                    // math operation like 50+2
// ac.settings.minLength = 1;                  // minimum amount of characters
// ac.settings.maxLength = 10;                 // maximum number of characters
// ac.settings.languagePool = 'en';            // language pool

ac.solveImage(captcha, true)
    .then(text => console.log('captcha text: '+text))
    .catch(error => console.log('test received error '+error));

كيفية حل رموز التحقق المًصورة في Go

// Install with:
// go get github.com/anti-captcha/anticaptcha-go
package main

import (
    "fmt"
    "github.com/anti-captcha/anticaptcha-go"
    "log"
)

func main() {
    // Create API client and set the API Key
    ac := anticaptcha.NewClient("API_KEY_HERE")

    // set to 'false' to turn off debug output
    ac.IsVerbose = true

    // Specify softId to earn 10% commission with your app.
    // Get your softId here: https://anti-captcha.com/clients/tools/devcenter
    //ac.SoftId = 1187

    // Make sure the API key funds balance is positive
    balance, err := ac.GetBalance()
    if err != nil {
        log.Fatal(err)
        // Exit program to make sure you don't DDoS API with requests, while having empty balance
        return
    }
    fmt.Println("Balance:", balance)

    // Solve image captcha
    solution, err := ac.SolveImageFile("captcha.jpg", anticaptcha.ImageSettings{
        // Optional settings, see documentation for description
        // Phrase        true,                         // Set to 'true' if the image has 2 or more words
        // CaseSensitive true,                         // Set to 'true' if the image is case-sensitive
        // Numeric       1,                            // Set numbers mode
        // MathOperation true,                         // Set to 'true' if the needs a math operation, like result of 50+5
        // MinLength     1,                            // Set minimum length of the text
        // MaxLength     10,                           // Set maximum length of the text
        // LanguagePool  "en",                         // Set language pool to 'en' for English, 'rn' for Russian
        // Comment       "Type in green characters",   // Optional comment for the task
        // WebsiteURL:   "https://some-website.com/",  // Optional to collect stats in the dashboard by this website
    })
    // OR
    // solution, err := ac.SolveImage("image-encoded-in-base64", anticaptcha.ImageSettings{})
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println("Captcha Solution:", solution)
}

كيفية حل رموز التحقق المًصورة في PHP

//git clone https://github.com/anti-captcha/anticaptcha-php.git

include("anticaptcha.php");
include("imagetotext.php");

$api = new ImageToText();

//your anti-captcha.com account key
$api->setKey("YOUR_API_KEY_HERE");

//setting file
$api->setFile("captcha.jpg");

//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
$api->setSoftId(0);

//$api->setPhraseFlag(true);   // 2 words flag
//$api->setCaseFlag(true);     // case sensitivity flag
//$api->setNumericFlag(1);     // only numbers flag
//$api->setMathFlag(true);     // math operation flag
//$api->setMinLengthFlag(1);   // minimum number or characters flag
//$api->setMaxLengthFlag(10);  // maximum number of characters flag
//$api->setLanguagePool("en"); // define language pool (see available pools above)

//Define the source website to collect statistics in your Anti-Captcha dashboard
//$api->setWebsiteURL("https://mywebsite.com/");


//create task in API
if (!$api->createTask()) {
    echo "API v2 send failed - ".$api->getErrorMessage()."\n";
    exit;
}

$taskId = $api->getTaskId();

if (!$api->waitForResult()) {
    echo "could not solve captcha\n";
    echo $api->getErrorMessage()."\n";
} else {
    $captchaText    =   $api->getTaskSolution();
    echo "captcha text: $captchaText\n\n";
}

كيفية حل رموز التحقق المًصورة في Java

//git clone https://github.com/anti-captcha/anticaptcha-java.git

package com.anti_captcha;

import com.anti_captcha.Api.ImageToText;
import com.anti_captcha.Helper.DebugHelper;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.net.MalformedURLException;
import java.net.URL;
import java.util.Iterator;
import java.util.concurrent.ThreadLocalRandom;

public class Main {

    public static void main(String[] args) throws InterruptedException, MalformedURLException, JSONException {
        DebugHelper.setVerboseMode(true);

        ImageToText api = new ImageToText();
        api.setClientKey("YOUR_API_KEY_HERE");
        api.setFilePath("captcha.jpg");

        //Specify softId to earn 10% commission with your app.
        //Get your softId here: https://anti-captcha.com/clients/tools/devcenter
        api.setSoftId(0);

        //optional parameters, see documentation
        //api.setPhrase(true);                                    // 2 words
        //api.setCase(true);                                      // case sensitivity
        //api.setNumeric(ImageToText.NumericOption.NUMBERS_ONLY); // only numbers
        //api.setMath(1);                                         // do math operation like result of 50+5
        //api.setMinLength(1);                                    // minimum length of the captcha text
        //api.setMaxLength(10);                                   // maximum length of the captcha text
        //api.setLanguagePool("en");                              // set pool of the languages used in the captcha

        if (!api.createTask()) {
            DebugHelper.out(
                    "API v2 send failed. " + api.getErrorMessage(),
                    DebugHelper.Type.ERROR
            );
        } else if (!api.waitForResult()) {
            DebugHelper.out("Could not solve the captcha.", DebugHelper.Type.ERROR);
        } else {
            DebugHelper.out("Result: " + api.getTaskSolution().getText(), DebugHelper.Type.SUCCESS);
        }
    }

}

كيفية حل رموز التحقق المًصورة في C#

//git clone https://github.com/anti-captcha/anticaptcha-csharp.git

using System;
using Anticaptcha_example.Api;
using Anticaptcha_example.Helper;
using Newtonsoft.Json.Linq;

namespace Anticaptcha_example
{
    internal class Program
    {
        private static void Main() {

            DebugHelper.VerboseMode = true;

            var api = new ImageToText
            {
                ClientKey = "YOUR_API_KEY_HERE",
                FilePath = "captcha.jpg",
                // Specify softId to earn 10% commission with your app.
                // Get your softId here:
                // https://anti-captcha.com/clients/tools/devcenter
                SoftId = 0

                // Additional flags, see documentation for details
                // Phrase = false,      // 2 words
                // Case = false,        // case sensitivity
                // Numeric = 1,         // numbers only
                // Math = 1,            // math operation like result of 50+5
                // MinLength = 1,       // minimum length of solution
                // MaxLength = 10,      // maximum length
                // LanguagePool = "en"  // language pool, see docs for available pools
            };

            if (!api.CreateTask())
                DebugHelper.Out("API v2 send failed. " + api.ErrorMessage, DebugHelper.Type.Error);
            else if (!api.WaitForResult())
                DebugHelper.Out("Could not solve the captcha.", DebugHelper.Type.Error);
            else
                DebugHelper.Out("Result: " + api.GetTaskSolution().Text, DebugHelper.Type.Success);

        }
    }
}

كيفية حل رموز التحقق المًصورة في bash

curl -i -H "Accept: application/json" \
-H "Content-Type: application/json" \
-X POST -d '{
    "clientKey":"YOUR_API_KEY_HERE",
    "task":
        {
            "type":"ImageToTextTask",
            "body":"BASE64_BODY_HERE__NO_NEWLINES__NO_EXTRA_TAGS__ONLY_CLEAN_BASE64",
            "phrase":false,
            "case":false,
            "numeric":0,
            "math":false,
            "minLength":0,
            "maxLength":0,
            "languagePool":"en"
        },
    "softId": 0
}' https://api.anti-captcha.com/createTask

كائن مهمة حل رموز التحقق

الخاصية نوع الخاصية الأهمية القيمة الافتراضية الوظيفة
type String مطلوبة ImageToTextTask وظيفة هذه الخاصية تحديد نوع المهمة
body String مطلوبة نص الملف المشفر بنظام base64. تأكد من إرسال النص بدون فواصل بين الأسطر. كذلك يرجى عدم ارسال (امتدادات مثل jpg أو png) أو علامات مشابهة، فقط نص مكتوب بترميز base64!
phrase Boolean غير مطلوبة false
case Boolean غير مطلوبة true
numeric Integer غير مطلوبة 0
math Boolean غير مطلوبة false
minLength Integer غير مطلوبة 0
maxLength Integer غير مطلوبة 0
comment String غير مطلوبة تعليقات إضافية للعاملين مثل "قم بإدخال النص باللون الأحمر". يُرجى العلم أن النتيجة غير مضمونة وتتوقف على مدى التزام العامل بتلك التعليمات..
websiteURL String غير مطلوبة خاصية اختيارية لتمييز مصدر رموز التحقق المُصورة في إحصائيات عمليات الدفع.
languagePool String غير مطلوبة en يحدد مجموعة لغة العمال. ينطبق ذلك فقط على رموز التحقق المُصورة. اللغات التالية هي المُتاحة في الوقت الحالي:

"en" (افتراضي): قائمة انتظار اللغة الإنجليزية
"rn": مجموعة الدول: روسيا، أوكرانيا، بيلاروسيا، كازاخستان

كائن حل المهمة

الخاصية نوع الخاصية الوظيفة
text String النص المُستخرَج من رموز التحقق المصورة
url String عنوان الويب حيث سيتم تخزين رموز التحقق بداخله لمدة 24 ساعة. وسيتم إزالته بعد ذلك.

مثال على نتيجة الطلب

{
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "text":"deditur",
        "url":"http://61.39.233.233/1/147220556452507.jpg"
    },
    "cost":"0.000700",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}