UNLOCK API
Lemin Cropped Captcha

Lemin Cropped Captcha

Як надіслати задачу Lemin Cropped Captcha до UNLOCK API через createTask або in.php: назви типів задач, усі параметри, об'єкт solution, поля проксі та приклади коду 7 мовами.
Ціна
$0.725 $0.000725 за задачу
Ви надсилаєте
URL сторінки, captcha id та id елемента div з віджетом
Ви отримуєте
Значення answer і challenge id

Огляд і ціна

Назви типу задачі

Використовуйте першу назву, щоб розв'язувати без проксі. Використовуйте другу назву й додайте поля проксі, щоб розв'язувати через власний проксі. Ціна однакова.
LeminTaskProxylessБез проксі
LeminTaskЧерез ваш проксі

Об'єкт задачі

type
StringОбов'язковий
Назва типу задачі. Регістр літер не важливий. LeminTaskProxyless | LeminTask
websiteURL
StringОбов'язковий
Повна адреса сторінки, на якій показано капчу, що починається з http:// або https://.
captchaId
StringОбов'язковий
captcha_id зі скрипта Lemin, починається з CROPPED_.
divId
StringОбов'язковий
Id елемента div, у якому розміщено віджет Lemin.
leminApiServerSubdomain
StringНеобов'язковий
API-сервер Lemin, якщо сторінка використовує власний.
userAgent
StringНеобов'язковий
User-Agent браузера для розв'язання. Надсилайте той самий, коли передаєте відповідь.

Поля, яких тут немає, передаються розв'язувачу без змін.

Поля проксі

Лише для назви типу з проксі. Надішліть або окремі поля, або один рядок proxy.
proxyType
StringОбов'язковий
http, https, socks4 або socks5.
proxyAddress
StringОбов'язковий
IP-адреса або ім'я хоста проксі.
proxyPort
IntegerОбов'язковий
Порт проксі.
proxyLogin
StringНеобов'язковий
Ім'я користувача проксі, якщо воно потрібне.
proxyPassword
StringНеобов'язковий
Пароль проксі, якщо він потрібен.
proxy
String
Усі поля проксі одним рядком, наприклад http://user:pass@1.2.3.4:8080.

Робота через проксі

Запит

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "LeminTaskProxyless",
    "websiteURL": "https://example.com/login",
    "captchaId": "CROPPED_3dfdd5c_d1872b526b794d83ba3b365eb15a200b",
    "divId": "lemin-cropped-captcha"
  }
}

Об'єкт solution

Повертається в solution, коли status дорівнює ready.
answer
String
Відповідь для надсилання.
challenge_id
String
Id challenge Lemin, який надсилається разом із відповіддю.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "answer": "0xaxakx0xaxaax0xkxx3ox0x3ox3ox...",
    "challenge_id": "e0348984-92ec-4b7f-9a4e-3b8e1f0c2d6a"
  },
  "cost": "0.000725",
  "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": "LeminTaskProxyless",
      "websiteURL": "https://example.com/login",
      "captchaId": "CROPPED_3dfdd5c_d1872b526b794d83ba3b365eb15a200b",
      "divId": "lemin-cropped-captcha"
    }
}).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"])
        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=lemin&captcha_id=CROPPED_ID&div_id=lemin-cropped-captcha&pageurl=https://example.com/login&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