ڈاکومنٹیشن مینو

mageToTextTask : تصویری captcha حل کریں

کوئی تصویری باڈی پوسٹ کریں اور اس سے ٹیکسٹ وصول کریں۔ ٹیکسٹ میں صرف ہندسے، حروف، اسپیشل کیریکٹرز اور اسپیس شامل ہوسکتے ہیں۔ GIF اینیمیشنز 500kb تک سپورٹ کی جاتی ہیں۔ “اس تصویر کے سیٹ پر بلی ڈھونڈیں اور اس کا نمبر درج کریں” جیسے کسٹم captchas سپورٹ نہیں کیے جاتے۔

ٹاسک آبجیکٹ

پراپرٹی قسم درکار ہے ڈیفالٹ ویلیو مقصد
type اسٹرنگ ہاں ImageToTextTask ٹاسک کی ایک قسم کو بیان کرتا ہے۔
body اسٹرنگ ہاں base64 میں انکوڈ کی گئی فائل باڈی۔اسے لائن بریک کے بغیر بھیجنا یقینی بنائیں۔ 'data:image/png' یا اس طرح کے ٹیگ شامل نہ کریں، صرٖف صاف base64!
phrase بُولین نہیں false غلط - کوئی تقاضے نہیں
درست - کارکن سے درکار کیا جاتا ہے کہ کم از کم ایک “اسپیس” کے ساتھ جواب درج کیا جائے۔ اگر اسپیس نہ ہوا تو وہ ٹاسک چھوڑ دیں گے، لہذا اسے احتیاط سے استعمال کریں۔
case بُولین نہیں true غلط - کوئی تقاضے نہیں
درست - کارکن ایک خاص نشان دیکھے گا جس میں کہا گیا ہو گا کہ جواب کو کیس کی حساسیت (case sensitivity) کے ساتھ داخل کرنا ضروری ہے۔
numeric انٹیگر نہیں 0 0 - کوئی تقاضے نہیں
1 - صرف ہندسوں کی اجازت ہے
2 - ہندسوں کے علاوہ کوئی بھی حروف کی اجازت ہے
math بُولین نہیں false غلط - کوئی تقاضے نہیں
درست - کارکن ایک خاص نشان دیکھے گا جس میں کہا گیا ہو گا کہ جواب کیلکولیٹ کرنا ہوگا۔
minLength انٹیگر نہیں 0 0 - کوئی تقاضے نہیں
>1 - جواب کی کم سے کم حد بیان کرتا ہے
maxLength انٹیگر نہیں 0 0 - کوئی تقاضے نہیں
>1 - جواب کی زیادہ سے زیادہ حد بیان کرتا ہے
comment اسٹرنگ نہیں کارکنوں کے لئے اضافی تبصرہ جیسے “سرخ رنگ میں حروف درج کریں”۔
نتائج کی ضمانت نہیں ہے اور یہ مکمل طور پر کسی کارکن پر منحصر ہے۔
websiteURL اسٹرنگ نہیں اخراجات کے اعدادوشمار میں تصویری captcha کے سورس کی تمیز کے لیے آپشنل پیرامیٹر۔

درخواست کی مثال

CURL
          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
        }
}' https://api.anti-captcha.com/createTask
        
PHP
          <?php

//git clone git@github.com:AdminAnticaptcha/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");

//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";
}
        
Python
          #pip3 install anticaptchaofficial

from anticaptchaofficial.imagecaptcha import *

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

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
        
NodeJS
          //npm -i @antiadmin/anticaptchaofficial
//https://github.com/AdminAnticaptcha/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');
ac.solveImage(captcha, true)
    .then(text => console.log('captcha text: '+text))
    .catch(error => console.log('test received error '+error));
        
C#
          //git clone git@github.com:AdminAnticaptcha/anticaptcha-csharp

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"
            };

            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);

        }
    }
}

        
Java
          //git clone git@github.com:AdminAnticaptcha/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");

        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);
        }
    }

}
        

جواب کی مثال

خرابیوں کے بغیر JSON
          {
    "errorId": 0,
    "taskId": 7654321
}
        
خرابیوں کے ساتھ JSON
          {
    "errorId": 1,
    "errorCode": "ERROR_KEY_DOES_NOT_EXIST",
    "errorDescription": "Account authorization key not found in the system"
}
        

حل بازیافت کریں

حل کی درخواست کرنے کے لیے طریقہ کار getTaskResult استعمال کریں۔ پہلی درخواست بھیجنے سے پہلے کارکن کو کچھ وقت دیں، جیسے 5 سیکنڈ۔ اگر کارکن ابھی بھی مصروف ہے تو 3 سیکنڈ میں دوبارہ کوشش کریں۔

ٹاسک کے حل کا آبجیکٹ

پراپرٹی قسم مقصد
text اسٹرنگ تصویری captcha سے ٹیکسٹ
url اسٹرنگ captcha کا ویب ایڈریس جہاں ہم اسے اگلے 24 گھنٹوں کے لیے اسٹور کریں گے۔ اس کو بعد میں ہٹا دیا جائے گا۔

جواب کی مثال

خرابیوں کے بغیر JSON
          {
    "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"
}