Skip to main content
Questo documento presenterà una guida all’integrazione dell’API di riconoscimento del protocollo Recaptcha3, che consente agli utenti di completare la verifica senza dover riconoscere e selezionare le immagini del codice captcha di Recaptcha3, ma semplicemente inviando la Website Key per attivare la decodifica automatica in background.

Processo di richiesta

Per utilizzare l’API di riconoscimento del protocollo Recaptcha3, prima di tutto vai al Pannello di controllo di Ace Data Cloud per ottenere il tuo API Token, da conservare per uso futuro. Se non hai ancora effettuato il login o la registrazione, verrai automaticamente reindirizzato alla pagina di login che ti invita a registrarti e accedere; una volta completato, verrai riportato automaticamente alla pagina corrente. Un API Token è sufficiente per accedere a tutti i servizi della piattaforma, senza dover richiedere separatamente per ogni servizio. La prima richiesta include un credito gratuito, che consente di provare il servizio gratuitamente; se il credito è insufficiente, puoi ricaricare il saldo generale nel pannello di controllo.
📘 Documentazione completa: API di riconoscimento del protocollo Recaptcha3 →

Utilizzo di base

Iniziamo a comprendere le modalità di utilizzo di base; rispetto a Recaptcha2, è necessario fornire un parametro aggiuntivo page_action, il quale deve essere ottenuto dal codice. L’URL di esempio per il test della velocità di rete è: https://recaptcha-demo.appspot.com/recaptcha-v3-request-scores.php, di seguito viene mostrato un metodo per ottenerlo:

Metodo rapido:

Apri f12, quindi cerca nella pagina Element .execute(; nell’area evidenziata in rosso possiamo vedere il parametro action, e subito dopo execute c’è una stringa, che è anche il contenuto necessario in seguito, come mostrato nell’immagine qui sotto.

Inoltre, è necessario inserire l’URL del sito web che deve elaborare il captcha, per ottenere il risultato elaborato; prima di tutto, è necessario semplicemente passare un campo website_url, e infine è necessario inserire il parametro website_key, che può essere ottenuto nel testo precedente, anch’esso una stringa che segue execute. Possiamo quindi compilare i contenuti corrispondenti nell’interfaccia, come mostrato nell’immagine:

Possiamo vedere che qui abbiamo impostato le intestazioni della richiesta, tra cui:
  • accept: il formato della risposta desiderata, qui impostato su application/json, ovvero formato JSON.
  • authorization: la chiave per chiamare l’API, che può essere selezionata direttamente dopo la richiesta.
Inoltre, abbiamo impostato il corpo della richiesta, che include:
  • page_action: deve essere ottenuto dal codice del sito web del captcha.
  • website_url: l’URL del sito web che deve elaborare il captcha.
  • website_key: l’identificatore della chiave del sito in Recaptcha3.
Dopo aver selezionato, possiamo notare che a destra è stato generato il codice corrispondente, come mostrato nell’immagine:

Cliccando sul pulsante “Try” è possibile effettuare un test, come mostrato nell’immagine sopra, e qui abbiamo ottenuto il seguente risultato:
I risultati restituiti contengono più campi, descritti come segue:
  • token, il risultato della verifica dopo l’elaborazione del compito Recaptcha3.
  • started_at, finished_at: il tempo di inizio e di fine della richiesta, timestamp Unix (secondi, float).
  • elapsed: il tempo totale impiegato per l’elaborazione (secondi).
Possiamo vedere che abbiamo ottenuto il risultato della verifica del Recaptcha3, che possiamo utilizzare per simulare l’invio a un sito web di destinazione tramite POST o GET, utilizzabile una sola volta, con una validità di 120 secondi, si consiglia di utilizzarlo entro 60 secondi. Di seguito verrà brevemente descritta una modalità per inviare il token generato al sito web di destinazione: Chiamata del codice Python corrispondente alla verifica del token:
Pertanto, possiamo ottenere il risultato:
可以看到,其中 success 表示此处验证的处理结果,所有我们成功通过Recaptcha3验证码的验证。 另外如果想生成对应的对接代码,可以直接复制生成,例如 CURL 的代码如下:
Python 的对接代码如下:

异步模式(async)

默认情况下 API 是同步阻塞的:一次请求会一直等待,直到 token 处理完成才返回。如果你在做多打码器轮换(multi-solver rotation),希望「提交任务后立即拿到 task_id,先去调度其他打码器,稍后再回来读取结果」,可以在请求体中传入 async: true 传入 async: true 后,接口会立即返回一个 task_id,而不会阻塞等待:
如需主动查看进度,可使用该 task_id 查询 POST /captcha/tasks(建议每 3~5 秒一次)。本接口不会触发或推进任务处理;即使不查询、断网或退出客户端,服务器仍会继续处理:
处理中会返回 status: processing
处理完成会返回 status: ready 和 token:
计费说明:异步模式下,创建任务和读取「处理中」状态都不计费;客户端首次读取成功结果时计费一次(与现有行为及同步模式价格一致)。服务器会自主推进任务,但不会因为后台先完成就提前扣费。任务在 120 秒内未成功会终止为 HTTP 504 timeout,不计费。/captcha/tasks 不负责推进任务。

错误处理

在调用 API 时,如果遇到错误,API 会返回相应的错误代码和信息。例如:
  • 400 token_mismatched:Bad request, possibly due to missing or invalid parameters.
  • 400 api_not_implemented:Bad request, possibly due to missing or invalid parameters.
  • 401 invalid_token:Unauthorized, invalid or missing authorization token.
  • 429 too_many_requests:Too many requests, you have exceeded the rate limit.
  • 500 api_error:Internal server error, something went wrong on the server.

错误响应示例

结论

通过本文档,您已经了解了如何使用 Recaptcha3 协议识别 API 让用户无需识别和点选 Recaptcha3 验证码图片,仅需通过提交 Website Key 即可实现后台自动解码,完成验证。希望本文档能帮助您更好地对接和使用该 API。如有任何问题,请随时联系我们的技术支持团队。