Documentation Index
Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
Use this file to discover all available pages before exploring further.
Este artigo apresentará uma descrição da integração da API de reconhecimento do protocolo Recaptcha3, que permite aos usuários validar sem precisar reconhecer e clicar nas imagens do captcha do Recaptcha3, bastando enviar a Chave do Site para realizar a decodificação automática em segundo plano e completar a validação.
Processo de Solicitação
Para usar a API, é necessário primeiro acessar a página correspondente da API de Reconhecimento do Protocolo Recaptcha3 para solicitar o serviço correspondente. Após entrar na página, clique no botão “Adquirir”, conforme mostrado na imagem abaixo:
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 o uso gratuito da API.
Uso Básico
Primeiro, entenda a forma básica de uso. Comparado ao Recaptcha2, precisamos passar um parâmetro adicional page_action, que deve ser obtido no código. A URL de demonstração da velocidade da rede é: https://recaptcha-demo.appspot.com/recaptcha-v3-request-scores.php. Abaixo está uma maneira de obtê-lo:
Método Rápido:
Abra o f12 e, em seguida, na página Element, pesquise por .execute(. Na área do quadro vermelho, podemos ver o parâmetro action, e ao lado de execute, há uma sequência de caracteres, que também é o conteúdo necessário a seguir, conforme mostrado na imagem abaixo.

Em seguida, você também precisa inserir a URL do site que precisa processar o captcha, para obter o resultado processado. Primeiro, é necessário passar um campo website_url, e por fim, você precisa inserir o parâmetro website_key, que pode ser obtido acima, também é uma sequência de caracteres após execute. Agora podemos preencher os conteúdos correspondentes na interface, conforme mostrado na imagem abaixo:

Podemos ver que aqui configuramos os Cabeçalhos da Solicitação, incluindo:
accept: o formato de resposta desejado, 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 Solicitação, incluindo:
page_action: deve ser obtido no código do site do captcha.
website_url: a URL do site que precisa processar o captcha.
website_key: o identificador da chave do site no Recaptcha3.
Após a seleção, podemos notar que o código correspondente também foi gerado à direita, conforme mostrado na imagem abaixo:

Clique no botão “Tentar” para realizar o teste, como mostrado na imagem acima, e aqui obtivemos o seguinte resultado:
{
"token": "03AFcWeA5mfdNlQD0RGX9PTWPs0l65QukjwbYObCue5hygRuA6jJmBtwR98S2bmmZOjbLh7ogEMDd8NzJdq8DoHOD_LHIUWmdEL3HJS0pP2nmTTSoU_ltxORWA4sVsrWiXDgkARA4wAhJCegD6PftkRuu0KKbqRsJ7KVKukUbLU1ThBu7P3r0fybwpS11yQmF7xpbEZeFzRm_osERk9tQzs1lEYORZSVA5dimbWi42TqUC87mJHCKO0HMiU404LOyER84It7ne51V5YXEHR_o6-ORr2CmBOawdTDTsqWUwT8vyEvzy-ov-pZdl0B0A_U59_uZd7vbIwv937-iXyzkVWbakUXNMdXlHffpFYd7OLTSBhJu6nasV3IhrbnxO8eGIbPDoHIyGpA74D882ALwTnXMgkcmGeGM9YuqCrf7F06cNKY7yKiisZIU-7v3ZnHV3JUkODGpXQ6dwq2fuP5o6kgeUQVdkv4fAZ_Tx_TB_R6gPSgwulr8Q5hH34bs-v1oUl2S9mLhXT9SWvgYizU_4FN2Ou23ETXTAVD_uI9fWaDgKaLOKI1i-xHCF_LKU3wKjyYJfQhFSCSyoeGL4o1j9lZ27cEHL5AlCm_jcCiXhe2_LT_dI-r5ozuyOGv-iDZ_1XTSSnCGdmroXX56XsZAytU52zBAlYVe_aRAojruc9KdkhK4kdeBESBbDLVe3-jNFwYspe0R93SORxXXIqR9CtZrIjI_2U8XjCHFz_euChdU_wkH5BjvONVbUT1DQNuoo0ugJL5kUkFrubHppOKvoZMwIKjjK_ZX1NBeCvQvYm6IpwBWfvM4hjGI7UVXH3iZkrX9PLATIIIkA8PxTeN45k8DulzOhKLSFKK196fRlH83S8UAaM-vjBxf32Vg83C1gWzKB5sYhxqEtZeB7DNpmAkozFfubljURr7YTjtq8Bgnj0PkfzbgKk8FRl-hMUb9BUjNNuSuFC7GZVim6xQnIV9ZPaAcuzJTYcOizFJePbVEXlc9A5Vq2rDh3D7Ld5o5oqc2kK4eCrO_38le6EVTs_fRY2nXy6RMyjjaJN12lOKYwYzGKhm52gTZTrJXqeTAW8o2KfwZ9iek-tr5qxj5b40iY4V2PY6SflMQvmKLAgFhB-yo-o5PEkikQ98T-bE-wG2-3kd5NRMiD132kIhf48zhVJUGeJqdV_3m8ukyqTk26KisM12kN-h9uYefvUCxzd_mBuWlHzH9rFMlJSe8Z6lcZIVcqNF4fcEM-ukNnwMUK5H_SC48U7O_xfOaEqEpAHDC7CCyVwlGCFh0uAT8KSpaNFfxBmMPXeYrGYn83PCgMg1NZA-7PrpeidXmWdBZ2yY8MA__7uCe8clCmINseBTCIbNmAHPlI_zJKqQfhXaDbaELeD62P0Pquu_SBtdEtqPeB9Esn_yjbK3IFvAaGSnFhwhHHK8dpOI7v-rJvTigPu8MMrEUTvug_zog81kCG8HY3xorTj2OdTwdEYpeMJ1VIHSjdTcnepLB0Cffx5wAdk-gf1TGEnEyTiwII4A4vtq8r0LFK4YObOzNmBTl3IoTNheYYKpheTKH3KShMK6hXDKxDRGEUhdsW4TRtVT-dwJDqY_F7J1RwKP-xDuN98VgwQmQuhJteQUALevgI2jAGFCFfSeFbQ8BOT6ekEI0m30zDX0kh83mkE7-u9qKljYifjqbLarMNPP51QRbvAS3mHlP17PMhIKzjuIka4T2Y9XdRwDgRRdEkYiJgDvkcABTknGBMezraon8JNDRhIJMUIKpidWTdhEQ79qAEfZkowdbnTdKeWeayi1OmV_W4aox-aC62H-VIn70McXXB6zRyYlA2NvTUWgNhHWkSO1SW7uflNEyUeWFRLBZV_firMEVfIGirHOAbQqsn83BirDNPHl4xevf4nRu4gWpgOGBrzeUXQeuMWO4ZFsdWxJ2VsT19t0H5DJtxtHYXFtPZ8tFDFY-r8JKFab4S6e5v8PCrfjCWkPmDaRJal_vLFa1V1dF1l0ARu9NLW4mEuT600azFms8cMlvuCTvWI2VWyn4Wk05UvcR8FYO2-ke4E-ZFRl0jSxjlEutzbOwm2ik4eF0Wh2DBliaSr1obHaxkmLJDUIzGQ3wi49Nyn0SSOdz_BGaxuRrrxCZ4ci0e2b5cxLtkv64Njy7IYJURaBuQk99ijdw7rg3pssAa_uJSMQeZe_kLtgEWF73uT4ceSOFPVuxMGLrJRQTBYxAHVKq7kloS5wtphUr2Sp-b4kezKnCV9HNfC5NRk2KqDT-bkJ6cUYN_0yauyZK1_F4BVTk36IOCe1Cqfe3K-wAZBzvrI_Vz8Li1uEWe0b5KOQ"
}
O resultado contém vários campos, conforme descrito abaixo:
token, o resultado da verificação após o processamento da tarefa Recaptcha3.
Podemos ver que obtivemos o resultado da verificação do Recaptcha3, que pode ser usado para simular uma submissão ao site-alvo via POST ou GET, sendo de uso único e com validade de 120s, recomendando-se o uso dentro de 60s. Abaixo, uma breve introdução sobre como enviar o token gerado para o site-alvo:
Chamada do código correspondente à verificação do token em Python:
import requests
url = "https://recaptcha-demo.appspot.c/recaptcha-v3-verify.php?action=examples/v3scores&token='{token}'"
r = requests.get(url)
if r.status_code == 200:
return r.text
Portanto, podemos obter o resultado:
{
"success": true,
"hostname": "recaptcha-demo.appspot.com",
"challenge_ts": "2024-09-14T08:52:26Z",
"apk_package_name": null,
"score": 0.9,
"action": "examples/v3scores",
"error-codes": []
}
Podemos ver que, entre eles, success indica o resultado do processamento da verificação, confirmando que conseguimos passar pela verificação do Recaptcha3.
Além disso, se você quiser gerar o código correspondente para integração, pode copiá-lo diretamente, como o código CURL abaixo:
curl -X POST 'https://api.xhuoapi.ai/v1/captcha/token/recaptcha3' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
"website_url": "https://recaptcha-demo.appspot.com/recaptcha-v3-request-scores.php",
"website_key": "6LdKlZEpAAAAAAOQjzC2v_d36tWxCl6dWsozdSy9",
"page_action": "examples/v3scores"
}'
O código de integração em Python é o seguinte:
import requests
url = "https://api.xhuoapi.ai/v1/captcha/token/recaptcha3"
headers = {
"accept": "application/json",
"authorization": "Bearer {token}",
"content-type": "application/json"
}
payload = {
"website_url": "https://recaptcha-demo.appspot.com/recaptcha-v3-request-scores.php",
"website_key": "6LdKlZEpAAAAAAOQjzC2v_d36tWxCl6dWsozdSy9",
"page_action": "examples/v3scores"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)
Tratamento de Erros
Ao chamar a API, se encontrar um erro, a API retornará o respectivo código de erro e mensagem. 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 do protocolo Recaptcha3 para que os usuários não precisem identificar e clicar nas imagens do captcha, bastando enviar a Chave do Website para realizar a decodificação automática em segundo plano e completar a verificação. Esperamos que este documento possa ajudá-lo a integrar e usar melhor essa API. Se tiver alguma dúvida, entre em contato com nossa equipe de suporte técnico.