Guides
Identifier le type de captcha
Cette page a été traduite automatiquement à partir de la version chinoise et peut contenir des erreurs. La version chinoise fait foi.
Pour choisir le bon type de tâche, il faut d’abord reconnaître le captcha. Le moyen le plus fiable est d’ouvrir les outils de développement du navigateur (F12) et de regarder, dans l’onglet Network (Réseau), quel script de captcha la page charge ; vous pouvez aussi vous fier à l’apparence.
Identifier par l’apparence
Section intitulée « Identifier par l’apparence »Voici l’aspect de chaque captcha sur une page web (animations illustratives, pas des captures d’écran) ; cliquez sur une carte pour ouvrir la page du type correspondant. Si l’apparence ne suffit pas, confirmez avec l’aide-mémoire ci-dessous et l’onglet Network.
- Je ne suis pas un robotreCAPTCHAConfidentialité - Conditions
- E-mailMot de passe••••••••Envoyerprotégé par reCAPTCHAConfidentialité - Conditions
- "objects": [1, 5, 8]Sélectionnez toutes les images avecdes voituresS'il n'y en a pas, cliquez sur Passer012345678Vérifier
- Je suis humainhCaptchaConfidentialité - Conditions
- "top_k": [0, 3, 4, 6, 7]Veuillez cliquer sur chaque image contenant un vélo012345678PasserVérifier
- E-mail[email protected]Vérification en cours...Confirmez que vous êtes humainSuccès !CLOUDFLAREConfidentialité • ConditionsSe connecter
- Un instant...Domaine d'exemple×example.com
example.com
Vérification que vous êtes humain en cours. Cela peut prendre quelques secondes.
Vérification en cours...Confirmez que vous êtes humainSuccès !CLOUDFLAREConfidentialité • Conditionsexample.com doit vérifier la sécurité de votre connexion avant de continuer.
Use the arrows to change the number of objects until it matches the left image (1 of 1)
Submit3 ×Match This!←→- "top_k": [1, 4, 5, 6, 7]
Confirmons que vous êtes humain
Choisissez tous les chapeaux
012345678Confirmer - "text": "LMResm"
Aide-mémoire
Section intitulée « Aide-mémoire »| Ce que vous voyez | De quoi il s’agit | Type de tâche à utiliser |
|---|---|---|
| Une case « Je ne suis pas un robot » | reCAPTCHA v2 | reCAPTCHA v2 |
| Pas de case à cocher ; une épreuve d’images apparaît après le clic sur « Envoyer » ; un petit badge reCAPTCHA en bas à droite | reCAPTCHA v2 invisible (ou v3) | Voir « Versions de reCAPTCHA » ci-dessous |
| Aucune interaction ; seulement le badge reCAPTCHA en bas à droite | reCAPTCHA v3 | reCAPTCHA v3 |
| Une case « Je suis humain » ; épreuves d’images marquées hCaptcha | hCaptcha | hCaptcha |
| Un widget Cloudflare dans un formulaire ; la page ne change pas après la validation | Cloudflare Turnstile | Turnstile |
| Toute la page affiche « Veuillez patienter… » / « Vérification de votre connexion », puis redirige automatiquement | Page de vérification Cloudflare | Page de vérification Cloudflare |
| Puzzles ou épreuves d’images d’Arkose Labs (par exemple « Choisissez l’image dans le bon sens ») | FunCaptcha | Reconnaissance d’images FunCaptcha |
| Une image de lettres et de chiffres déformés | Captcha de caractères | Reconnaissance de texte dans une image |
Versions de reCAPTCHA
Section intitulée « Versions de reCAPTCHA »Dans l’onglet Network, cherchez api.js ou enterprise.js :
| Script chargé | Version |
|---|---|
recaptcha/api.js, sans paramètre render ou avec render=explicit |
v2 standard |
Idem, et l’adresse de la requête anchor contient size=invisible |
v2 invisible : ajoutez "isInvisible": true à la tâche |
recaptcha/api.js?render=CLÉ_DU_SITE (render différent de explicit) |
v3 standard |
recaptcha/enterprise.js, sans paramètre render ou avec render=explicit |
v2 Enterprise |
recaptcha/enterprise.js?render=CLÉ_DU_SITE |
v3 Enterprise |
Exemples :
https://www.google.com/recaptcha/api.js?onload=onloadcallback&render=explicit → v2https://www.google.com/recaptcha/api.js?render=6LdyC2cUAAAAACGuDKpXeDorzUDWXmdqeg-xy696 → v3https://www.google.com/recaptcha/enterprise.js?render=explicit → v2 EnterpriseLa v2 invisible ne passe parfois qu’avec un type v3 ; essayez les deux.
Vous pouvez aussi exécuter le code ci-dessous dans la console (Console) du navigateur. Il liste tous les reCAPTCHA de la page avec leur version, leur clé de site, l’adresse de la page et leur fonction de rappel :
// Paste into the browser DevTools console on a page with reCAPTCHA, then run findRecaptchaClients().// Lists every reCAPTCHA on the page: version (V2/V3), sitekey, page URL and the callback function.function findRecaptchaClients() { if (typeof ___grecaptcha_cfg === 'undefined') return []; return Object.entries(___grecaptcha_cfg.clients).map(([cid, client]) => { const data = { id: cid, version: cid >= 10000 ? 'V3' : 'V2' }; const objects = Object.entries(client).filter(([, value]) => value && typeof value === 'object'); objects.forEach(([toplevelKey, toplevel]) => { const found = Object.entries(toplevel).find( ([, value]) => value && typeof value === 'object' && 'sitekey' in value && 'size' in value, ); if (toplevel instanceof HTMLElement && toplevel.tagName === 'DIV') data.pageurl = toplevel.baseURI; if (found) { const [sublevelKey, sublevel] = found; data.sitekey = sublevel.sitekey; const callbackKey = data.version === 'V2' ? 'callback' : 'promise-callback'; const callback = sublevel[callbackKey]; if (!callback) { data.callback = null; data.function = null; } else { data.function = callback; const keys = [cid, toplevelKey, sublevelKey, callbackKey].map((key) => `['${key}']`).join(''); data.callback = `___grecaptcha_cfg.clients${keys}`; } } }); return data; });}
findRecaptchaClients();Exemple de résultat :
[ { "id": "0", "version": "V2", "sitekey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-", "function": "onSuccess", "callback": "___grecaptcha_cfg.clients['0']['l']['l']['callback']", "pageurl": "https://www.google.com/recaptcha/api2/demo" }]Les pages de démonstration de Google permettent de comparer : v2 standard https://www.google.com/recaptcha/api2/demo, v2 invisible https://www.google.com/recaptcha/api2/demo?invisible=true.
Turnstile et page de vérification Cloudflare
Section intitulée « Turnstile et page de vérification Cloudflare »Les deux viennent de Cloudflare, mais ce ne sont pas la même chose :
- Turnstile est un widget intégré au formulaire d’une page. Une fois la vérification terminée, une coche s’affiche et la page ne change pas. La page charge
challenges.cloudflare.com/turnstile/v0/api.js. Utilisez Turnstile. - La page de vérification Cloudflare remplace toute la page par l’écran de contrôle de Cloudflare (« Veuillez patienter… », « xx.com doit d’abord vérifier la sécurité de votre connexion »), qui peut aussi contenir un widget ; une fois la vérification réussie, elle redirige vers la vraie page. Le code source contient
__cf_chl_rt_tkoucdn-cgi/challenge-platform. Utilisez Page de vérification Cloudflare.
Si votre programme reçoit un 403 avec « Just a moment… » alors qu’un navigateur ouvre la page directement, vous êtes probablement bloqué uniquement par l’empreinte TLS. Une bibliothèque qui imite l’empreinte TLS d’un navigateur (par exemple curl_cffi) suffit généralement à passer, sans rien résoudre.