Saltar para o conteúdo principal
Este documento irá apresentar uma explicação sobre a integração da API de reconhecimento de imagens hCaptcha, que pode identificar o conteúdo inserido pelo usuário e a imagem do captcha hCaptcha, retornando as coordenadas da pequena imagem que precisa ser clicada para completar a verificação.

Processo de Solicitação

Para usar a API, você precisa primeiro acessar a página correspondente da API de Reconhecimento de Imagens hCaptcha para solicitar o serviço correspondente. Após entrar na página, clique no botão “Acquire”, como mostrado na imagem: Se você ainda não estiver logado ou registrado, será redirecionado automaticamente para a página de login, convidando-o a se registrar e fazer login. Após o registro e login, você será redirecionado de volta para a página atual. Na primeira solicitação, haverá um crédito gratuito disponível, permitindo que você use a API sem custo.

Uso Básico

Primeiro, entenda a forma básica de uso, que é inserir a imagem do captcha hCaptcha a ser processada para obter o resultado processado. Primeiro, você precisa passar um campo queries, que é a imagem do captcha hCaptcha específica. Precisamos capturar essa imagem do captcha em um site que tenha o captcha hCaptcha, o link do site de exemplo é: https://democaptcha.com/demo-form-eng/hcaptcha.html, clique na caixa de seleção para exibir a imagem completa do captcha, como mostrado na imagem abaixo:

O campo queries é a captura da imagem do captcha mencionada acima, o tamanho da imagem não deve exceder 100kb. Você também precisa capturar a área indicada pela seta vermelha na imagem acima e deve comprimir o tamanho da imagem, além de convertê-la para codificação Base64, como mostrado na imagem abaixo:

Além disso, você precisa inserir o parâmetro de conteúdo de reconhecimento relacionado à imagem do captcha question, que suporta tradução em chinês e inglês. Você pode inserir diretamente o conteúdo relacionado ao reconhecimento. A partir do conteúdo executado na imagem da página da web acima, podemos ver que a entrada para question deve ser Please click on the UNIQUE object among the others.. O conteúdo específico é o seguinte:

Podemos ver que configuramos os Headers da Requisição, incluindo:
  • accept: o formato de resposta que você deseja receber, aqui preenchido como application/json, ou seja, formato JSON.
  • authorization: a chave para chamar a API, que pode ser selecionada diretamente após a solicitação.
Além disso, configuramos o Corpo da Requisição, incluindo:
  • queries: lista de imagens do captcha codificadas em Base64.
  • question: parâmetro de conteúdo de reconhecimento relacionado à imagem do captcha, que suporta entrada direta em chinês e inglês.
Após a seleção, você pode notar que o código correspondente também foi gerado à direita, como mostrado na imagem:

Clique no botão “Try” para realizar o teste, como mostrado na imagem acima, e aqui obtemos o seguinte resultado:
{
  "solution": {
    "label": "Please click on the UNIQUE object among the others",
    "box": [
      "360",
      "276"
    ],
    "confidences": 0.6354503631591797
  }
}
O resultado retornado contém vários campos, descritos a seguir:
  • solution, o resultado da verificação após o processamento da imagem do captcha hCaptcha.
    • label, o conteúdo reconhecido da imagem do captcha hCaptcha.
    • box, informações de localização do resultado do reconhecimento da imagem do captcha hCaptcha, que é composta pelas informações de coordenadas da imagem.
    • confidences, a confiança do reconhecimento da imagem do captcha hCaptcha em relação ao conteúdo reconhecido.
Podemos ver que obtivemos o resultado da verificação da imagem do captcha hCaptcha. Precisamos apenas simular um clique na área correspondente às coordenadas de box para passar na verificação. A seguir, será apresentado como clicar nas informações de localização de box do resultado. Primeiro, estabelecemos um sistema de coordenadas retangulares para a imagem do captcha carregada, onde a origem central está no canto inferior esquerdo da imagem, 360 é a coordenada horizontal correspondente e 276 é a coordenada vertical correspondente. Precisamos apenas simular um clique nas coordenadas correspondentes do captcha, como mostrado na imagem abaixo:

Além disso, se você quiser gerar o código de integração correspondente, pode copiá-lo diretamente, por exemplo, o código CURL é o seguinte:
curl -X POST 'https://api.acedata.cloud/captcha/recognition/hcaptcha' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "question": "Please click on the UNIQUE object among the others.",
  "queries": ["iVBORw0KGgoAAAANSU.....eY+85KVlzKHav28uq/WLVhL2kHUlFMKUcZbL31S8bpd0pEPKxNllXAE2wgu3uEfj+BfAzOGelsQNFAAAAAElFTkSuQmCC"]
}'
O código de integração em Python é o seguinte:
import requests

url = "https://api.acedata.cloud/captcha/recognition/hcaptcha"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "question": "Please click on the UNIQUE object among the others.",
    "queries": ["iVBORw0KGgoAAAANSU.....eY+85KVlzKHav28uq/WLVhL2kHUlFMKUcZbL31S8bpd0pEPKxNllXAE2wgu3uEfj+BfAzOGelsQNFAAAAAElFTkSuQmCC"]
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

Tratamento de Erros

Ao chamar a API, se ocorrer um erro, a API retornará o código de erro e a mensagem correspondente. Por exemplo:
  • 400 token_mismatched: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.
  • 400 api_not_implemented: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.
  • 401 invalid_token: Não autorizado, token de autorização inválido ou ausente.
  • 429 too_many_requests: Muitas solicitações, você excedeu o limite de taxa.
  • 500 api_error: Erro interno do servidor, algo deu errado no servidor.

Exemplo de Resposta de Erro

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

Conclusão

Através deste documento, você já entendeu como usar a API de Reconhecimento de Imagens hCaptcha para que os usuários insiram o conteúdo reconhecido e a imagem do captcha hCaptcha, retornando as coordenadas da pequena imagem que precisa ser clicada para completar a verificação. Esperamos que este documento ajude você a integrar e usar melhor essa API. Se tiver alguma dúvida, entre em contato com nossa equipe de suporte técnico.