Guia
Tarefa (Token)
hCaptcha

HCaptcha: resolvendo o hCaptcha

TIP

Crie a tarefa com o método createTask e obtenha o resultado com o método getTaskResult.

TIP

Agora atendemos aos requisitos de quase todos os sites de alta pontuação e também suportamos invisível, desenhe uma caixa e outros tipos de perguntas.

Os tipos de tarefa que suportamos são:

  • HCaptchaTask - este tipo de tarefa requer seus próprios proxies.
  • HCaptchaTaskProxyLess - usa o proxy incorporado do servidor.
Anúncio de Instabilidade no Serviço hCaptcha

Pedimos desculpas pela instabilidade recente do serviço hCaptcha causada por atualizações de imagens e outros problemas. Lamentamos profundamente qualquer inconveniente causado. Se você encontrar novas imagens que tornem o serviço indisponível, por favor, aguarde nossa atualização. Para quaisquer outras perguntas, sinta-se à vontade para entrar em contato conosco a qualquer momento.

WARNING

Se você receber uma resposta inválida usando HCaptchaTask, entre em contato conosco, pois cada site possui algumas configurações específicas, e geralmente funciona corretamente após configurarmos.

WARNING

Para garantir a taxa de sucesso dos tokens, use um userAgent fixo Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 (as atualizações podem ocorrer a qualquer momento, esteja ciente disso).

Criar Tarefa

Crie uma tarefa com o createTask para criar uma tarefa.

Estrutura do Objeto da Tarefa

PropriedadesTipoObrigatórioDescrição
typeStringRequiredHCaptchaTask
HCaptchaTaskProxyLess
websiteURLStringRequiredEndereço web do site que utiliza o hcaptcha, geralmente é um valor fixo. (Ex: https://google.com)
websiteKeyStringRequiredA chave pública do domínio, raramente atualizada. (Ex: b989d9e8-0d14-41sda0-870f-97b5283ba67d)
isInvisibleBooleanOptionalDefina como true se for um captcha invisível
proxyStringOptionalSaiba Como usar proxies
enterprisePayloadObjectOptionalDados personalizados usados em algumas implementações do hCaptcha Enterprise.
Portanto, você precisa colocar true no parâmetro isEnterprise. Na maioria dos casos, você o vê como rqdata nas solicitações de rede.
IMPORTANTE: você DEVE fornecer o userAgent se enviar o captcha com o parâmetro data.
O valor deve corresponder ao User-Agent que você usa ao interagir com o site de destino
getCaptchaObjectOptionalSe você receber uma resposta inválida, pode tentar este parâmetro, você pode aprender em Solve HCaptcha
userAgentStringOptionalUser-Agent do navegador usado na emulação. É necessário que você use uma assinatura de um navegador moderno, caso contrário o Google pedirá para “atualizar seu navegador”.

Exemplo de Solicitação

POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    // Obrigatório. Pode usar HCaptchaTaskProxyless ou HCaptchaTask
    "type": "HCaptchaTaskProxyLess",
    // Obrigatório
    "websiteURL": "",
    // Obrigatório
    "websiteKey": "00000000-0000-0000-0000-000000000000",
    // Opcional
    "isInvisible": true,
    // Opcional
    "enterprisePayload": {
      // Opcional, necessário se o site tiver HCaptcha Enterprise
      "rqdata": ""
    },
    // Opcional, isso é necessário se você usar HCaptchaTask
    "proxy": "http:ip:port:user:pass",
    // socks5:ip:port:user:pass
    // Opcional
    "getCaptcha": "fetch request base64 content",
    "userAgent": ""
  }
}

Após enviar a tarefa para nós, você deverá receber na resposta um ‘ID de tarefa’ se for bem-sucedido. Por favor, leia errorCode: lista completa de erros se você não receber o ID da tarefa.

Exemplo de Resposta

{
  "errorId": 0,
  "errorCode": "",
  "errorDescription": "",
  "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Obtendo Resultados

Use o método getTaskResult para obter os resultados de reconhecimento

Dependendo da carga do sistema, você receberá os resultados no intervalo de 1s a 10s

Exemplo de Solicitação

POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json
 
{
    "clientKey": "YOUR_API_KEY",
    "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Exemplo de Resposta

{
  "errorId": 0,
  "errorCode": null,
  "errorDescription": null,
  "solution": {
    //User-Agent usado para resolver o captcha
    "userAgent": "xxx",
    //Tempo de expiração do token
    "expireTime": 1671615324290,
    "timestamp": 1671615024290,
    "captchaKey": "E0_xxx",
    //Token do captcha
    "gRecaptchaResponse": "3AHJ....."
  },
  "status": "ready"
}

Solicitação via SDK

# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'
 
import capsolver
 
# capsolver.api_key = "..."
solution = capsolver.solve({
    "type": "HCaptchaTaskProxyLess",
    "websiteURL": "",
    "websiteKey": "00000000-0000-0000-0000-000000000000",
})