UNLOCK API
ছবি থেকে লেখা

ছবি থেকে লেখা

createTask বা in.php দিয়ে UNLOCK API-তে ছবি থেকে লেখা টাস্ক কীভাবে পাঠাবেন: টাস্ক টাইপের নাম, প্রতিটি প্যারামিটার, solution অবজেক্ট, proxy ফিল্ড এবং 7টি ভাষায় কোড উদাহরণ।
মূল্য
$0.25 প্রতি টাস্ক $0.00025
আপনি পাঠান
base64 আকারে ছবি, সর্বোচ্চ 100 KB
আপনি পাবেন
ছবিতে থাকা লেখা

সংক্ষিপ্ত বিবরণ ও মূল্য

টাস্ক টাইপের নাম

এই টাইপের একটিই নাম।
ImageToTextTask

টাস্ক অবজেক্ট

type
Stringআবশ্যিক
টাস্ক টাইপের নাম। ছোট-বড় যেকোনো হাতের অক্ষরে মেলানো হয়। ImageToTextTask
body
Stringআবশ্যিক
ছবি base64 হিসেবে (JPG, PNG বা GIF), প্রায় 100 KB পর্যন্ত। data: prefix দেওয়া যায়।
phrase
Booleanঐচ্ছিক
উত্তরে দুই বা তার বেশি শব্দ থাকলে true।
case
Booleanঐচ্ছিক
ছোট-বড় হাতের অক্ষরের পার্থক্য গুরুত্বপূর্ণ হলে true।
numeric
Integerঐচ্ছিক
0 যেকোনো অক্ষর, 1 শুধু সংখ্যা, 2 শুধু বর্ণ, 3 সংখ্যা বা বর্ণ, 4 সংখ্যা ও বর্ণ দুটোই।
math
Booleanঐচ্ছিক
ছবিতে হিসাব করার মতো অঙ্ক থাকলে true।
minLength
Integerঐচ্ছিক
উত্তরের সম্ভাব্য সবচেয়ে ছোট দৈর্ঘ্য। 0 মানে কোনো সীমা নেই।
maxLength
Integerঐচ্ছিক
উত্তরের সম্ভাব্য সবচেয়ে বড় দৈর্ঘ্য। 0 মানে কোনো সীমা নেই।
comment
Stringঐচ্ছিক
সলভারের জন্য নির্দেশনা, যেমন ছবির ওপরে দেখানো প্রশ্ন।
languagePool
Stringঐচ্ছিক
উত্তরের ভাষা, যেমন en বা ru।

এখানে তালিকায় না থাকা ফিল্ড যেমন পাঠানো হয় তেমনই সলভারে দেওয়া হয়।

রিকোয়েস্ট

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "ImageToTextTask",
    "body": "/9j/4AAQSkZJRgABAQ...",
    "case": true
  }
}

Solution অবজেক্ট

status ready হলে solution-এ ফেরত দেওয়া হয়।
text
String
উত্তর টেক্সট হিসেবে।
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "text": "w93bx"
  },
  "cost": "0.00025",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

কোড উদাহরণ

import time, requests

API = "https://unlock-api.com"
KEY = "YOUR_API_KEY"

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "ImageToTextTask",
      "body": "/9j/4AAQSkZJRgABAQ...",
      "case": true
    }
}).json()
if task["errorId"]:
    raise SystemExit(task["errorCode"])

for _ in range(60):   # 60 x 5 s = the 5 minute task limit
    time.sleep(5)
    r = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if r["errorId"]:
        raise SystemExit(f"{r['errorCode']}: {r.get('errorDescription', '')}")   # failed tasks are refunded
    if r["status"] == "ready":
        print(r["solution"]["text"])
        break
else:
    raise SystemExit("timed out")

in.php ফর্ম মেথড

ক্লাসিক ফর্ম রিকোয়েস্টে একই টাস্ক। res.php উত্তর টেক্সট হিসেবে ফেরত দেয়।
in.php, res.php
curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=base64&body=BASE64_IMAGE&json=1"
# {"status":1,"request":"1001"}

curl -s "https://unlock-api.com/res.php?key=YOUR_API_KEY&action=get&id=1001&json=1"
# {"status":0,"request":"CAPCHA_NOT_READY"}  then  {"status":1,"request":"ANSWER"}

ফর্ম API: in.php ও res.php