NeuroCaptcha

Tipo de tarefa

GeeTest v4

GeeTestTaskV4proxy próprio

Envie os parâmetros da página e receba um token pronto para uso, no mesmo formato de resposta de todos os outros tipos.

Com o seu proxy: a tarefa é resolvida pelo proxy que você informar, então o token corresponde ao seu IP. As credenciais do proxy são apagadas após a resolução.

Preço

US$ 0,90por 1.000 tarefas

US$ 0,0009 por tarefa

Obter chave de API

Métricas em tempo real, 24 h

As métricas em tempo real deste tipo aparecerão na página de status após o lançamento.

Parâmetros da tarefa

ParâmetroTipoobrigatórioParâmetros da tarefa
typestringobrigatórioGeeTestTaskV4
websiteURLstringobrigatórioURL completa da página com o captcha.
captchaIdstringobrigatórioId do captcha: captcha_id do GeeTest v4 ou o id CROPPED_… do Lemin.
userAgentstringopcionalUser-Agent usado na resolução; use o mesmo ao enviar o token.
cookiesstringopcionalCookies do site de destino no formato key1=value1; key2=value2.
proxyTypestringobrigatóriohttp, socks4 ou socks5.
proxyAddressstringobrigatórioEndereço IP ou host do proxy (apenas endereços públicos).
proxyPortintegerobrigatórioPorta do proxy.
proxyLoginstringopcionalLogin do proxy, se ele exigir autenticação.
proxyPasswordstringopcionalSenha do proxy. Apagada após a resolução da tarefa.

Exemplo

import time
import requests

API = "https://"
KEY = "YOUR_API_KEY"

# 1. create a task: the price is held, not charged
task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
        "type": "GeeTestTaskV4",
        "websiteURL": "https://example.com/login",
        "captchaId": "e392e1d7fd421dc63325744d5a2b9c73",
        "proxyType": "http",
        "proxyAddress": "203.0.113.10",
        "proxyPort": 8080,
        "proxyLogin": "user",
        "proxyPassword": "pass",
    },
}).json()
if task["errorId"]:
    raise RuntimeError(task["errorCode"])

# 2. poll the result (or pass "callbackUrl" and get a signed webhook)
while True:
    time.sleep(3)
    res = requests.post(f"{API}/getTaskResult",
                        json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if res["errorId"]:
        raise RuntimeError(res["errorCode"])
    if res["status"] == "ready":
        print(res["solution"])
        break

Outros tipos de tarefas