UNLOCK API
Image vers texte

Image vers texte

Comment envoyer une tâche Image vers texte à UNLOCK API avec createTask ou in.php : noms du type de tâche, tous les paramètres, l'objet solution, les champs proxy et des exemples de code dans 7 langages.
Prix
$0.25 $0.00025 par tâche
Vous envoyez
L'image en base64, jusqu'à 100 KB
Vous recevez
Le texte de l'image

Présentation et prix

Noms du type de tâche

Ce type n'a qu'un seul nom.
ImageToTextTask

Objet tâche

type
StringObligatoire
Nom du type de tâche. Reconnu quelle que soit la casse. ImageToTextTask
body
StringObligatoire
L'image en base64 (JPG, PNG ou GIF), jusqu'à environ 100 KB. Un préfixe data: est accepté.
phrase
BooleanFacultatif
true si la réponse contient deux mots ou plus.
case
BooleanFacultatif
true si la casse compte.
numeric
IntegerFacultatif
0 n'importe quels caractères, 1 chiffres uniquement, 2 lettres uniquement, 3 chiffres ou lettres, 4 chiffres et lettres.
math
BooleanFacultatif
true si l'image montre un calcul à effectuer.
minLength
IntegerFacultatif
Longueur minimale de la réponse. 0 signifie sans limite.
maxLength
IntegerFacultatif
Longueur maximale de la réponse. 0 signifie sans limite.
comment
StringFacultatif
Consigne pour le résolveur, par exemple la question affichée au-dessus de l'image.
languagePool
StringFacultatif
Langue de la réponse, par exemple en ou ru.

Les champs qui ne figurent pas ici sont transmis au résolveur tels qu'envoyés.

Requête

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

Objet solution

Renvoyé dans solution quand status vaut ready.
text
String
La réponse en texte.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "text": "w93bx"
  },
  "cost": "0.00025",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

Exemples de code

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

Méthode formulaire in.php

La même tâche avec la requête de formulaire classique. res.php renvoie la réponse en texte.
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 formulaire : in.php et res.php