Skip to main content
Cet article présentera une documentation d’intégration pour l’API de reconnaissance de protocole Recaptcha2, qui permet aux utilisateurs de ne pas avoir à reconnaître et cliquer sur les images de captcha Recaptcha2, mais simplement de soumettre la clé du site pour permettre un décodage automatique en arrière-plan et compléter la vérification.

Processus de demande

Pour utiliser l’API de reconnaissance de protocole Recaptcha2, commencez par obtenir votre jeton API sur le tableau de bord Ace Data Cloud et conservez-le pour référence. Si vous n’êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion qui vous invite à vous inscrire et à vous connecter, après quoi vous serez automatiquement renvoyé à la page actuelle. Un jeton API suffit pour appeler tous les services de la plateforme, sans avoir à en demander un pour chaque service. La première demande vous donnera un quota gratuit pour une expérience sans frais ; si le quota est insuffisant, vous pouvez recharger le solde général dans le tableau de bord.
📘 Documentation complète : API de reconnaissance de protocole Recaptcha2 →

Utilisation de base

Tout d’abord, comprenons la méthode d’utilisation de base, qui consiste à entrer l’URL du site Web nécessitant le traitement du captcha, ce qui vous permettra d’obtenir le résultat traité. Vous devez d’abord transmettre un champ website_url, notre site d’exemple est : https://www.google.com/recaptcha/api2/demo, nous devons obtenir la website_key sur la page website_url, pour cela, ouvrez cette page, appuyez sur F12 pour accéder à la console, puis effectuez une recherche globale dans l’onglet Éléments pour recaptcha-demo, nous pouvons obtenir le résultat suivant :

La chaîne de caractères correspondant à data-sitekey est la valeur de website_key, voici les résultats des paramètres spécifiques :

Nous pouvons voir ici que nous avons défini les en-têtes de requête, y compris :
  • accept : le format de réponse souhaité, ici rempli avec application/json, c’est-à-dire au format JSON.
  • authorization : la clé pour appeler l’API, que vous pouvez sélectionner directement après la demande.
De plus, nous avons défini le corps de la requête, y compris :
  • website_url : l’URL du site Web nécessitant le traitement du captcha.
  • website_key : l’identifiant de la clé du site dans Recaptcha2.
Après sélection, vous pouvez constater que le code correspondant a également été généré à droite, comme illustré ci-dessous :

Cliquez sur le bouton « Essayer » pour effectuer un test, comme montré sur l’image ci-dessus, ici nous avons obtenu le résultat suivant :
Le résultat contient plusieurs champs, décrits comme suit :
  • token, le résultat de la vérification après le traitement de la tâche Recaptcha2.
On peut voir que nous avons obtenu le résultat de la vérification du traitement de Recaptcha2, que nous pouvons ensuite utiliser pour POST ou simuler une soumission au site cible, à usage unique, avec une durée de validité de 120 secondes, il est conseillé de l’utiliser dans les 60 secondes. Ensuite, nous fournirons un extrait de code Python pour soumettre le token traité au site cible afin de passer le Recaptcha2. Tout d’abord, nous devons comprendre comment le site envoie la requête POST, afin de pouvoir y insérer le token généré. Nous devons d’abord ouvrir la console F12, puis passer manuellement par le processus, et enfin, nous pouvons voir que le site a envoyé une requête POST. Nous devons simplement examiner la construction de cette requête POST, le processus spécifique est le suivant :
  • D’abord, passer la vérification manuellement, comme illustré ci-dessous :

  • Ensuite, cliquez sur soumettre, observez les changements dans le réseau de la console, comme illustré ci-dessous :

  • Analysez la construction de la requête POST soumise, puis faites un clic droit sur cette requête pour copier le code CURL, comme illustré ci-dessous :

由上图分析可知,此次POST请求的URL为:https://www.google.com/recaptcha/api2/demo,我们仅需要提交参数 g-recaptcha-response,然后我们只需要将处理后的token传入下面的data中即可,调用token进行验证的具体的CURL代码如下:
调用token验证所对应的Python代码如下:
然后我们运行后代码观察控制台变得了这样的结果:

最后我们就通过了Recaptcha2验证码的协议验证。 另外如果想生成对应的对接代码,可以直接复制生成,例如 CURL 的代码如下:
Python 的对接代码如下:

Mode asynchrone (async)

Par défaut, l’API est synchrone et bloquante : une demande attendra jusqu’à ce que le traitement du token soit terminé avant de renvoyer une réponse. Si vous effectuez une rotation de plusieurs solveurs (multi-solver rotation) et souhaitez « soumettre une tâche et obtenir immédiatement un task_id, puis planifier d’autres solveurs et revenir plus tard pour obtenir le résultat », vous pouvez passer async: true dans le corps de la demande. En passant async: true, l’interface renverra immédiatement un task_id sans bloquer l’attente :
Ensuite, utilisez ce task_id pour interroger POST /captcha/tasks (il est conseillé de le faire toutes les 3 à 5 secondes) pour obtenir le résultat :
En cours de traitement, cela renverra status: processing :
Une fois le traitement terminé, cela renverra status: ready et le token :
Explication des frais : en mode asynchrone, la création de tâches et l’interrogation « en cours de traitement » ne sont pas facturées ; vous ne serez facturé qu’une seule fois lorsque vous obtiendrez un résultat avec succès (au même prix que le mode synchrone). Par conséquent, annuler les tâches non terminées lors de la rotation ne générera pas de frais. /captcha/tasks est commun à toutes les interfaces de captcha (token et série de reconnaissance), vous pouvez interroger avec le même task_id.

Gestion des erreurs

Lors de l’appel de l’API, si une erreur se produit, l’API renverra le code d’erreur et les informations correspondantes. Par exemple :
  • 400 token_mismatched : Mauvaise demande, probablement en raison de paramètres manquants ou invalides.
  • 400 api_not_implemented : Mauvaise demande, probablement en raison de paramètres manquants ou invalides.
  • 401 invalid_token : Non autorisé, token d’autorisation invalide ou manquant.
  • 429 too_many_requests : Trop de demandes, vous avez dépassé la limite de taux.
  • 500 api_error : Erreur interne du serveur, quelque chose s’est mal passé sur le serveur.

Exemple de réponse d’erreur

Conclusion

Grâce à ce document, vous avez compris comment utiliser l’API de reconnaissance du protocole Recaptcha2 pour permettre aux utilisateurs de ne pas avoir à reconnaître et cliquer sur les images de captcha Recaptcha2, mais simplement en soumettant la clé du site Web pour réaliser le décodage automatique en arrière-plan et compléter la vérification. Nous espérons que ce document vous aidera à mieux intégrer et utiliser cette API. Si vous avez des questions, n’hésitez pas à contacter notre équipe de support technique.