Integrations

CaptchaAI + Smartproxy : configuration de proxys résidentiels en QA

Périmètre sûr : ce guide s'applique exclusivement à vos propres applications, à vos environnements de QA, de préproduction ou de production, ou à des systèmes pour lesquels vous disposez d'une autorisation écrite. Il ne décrit ni l'automatisation de sites tiers, ni la neutralisation de protections que vous ne contrôlez pas.

Un proxy résidentiel ne résout aucun CAPTCHA : il change seulement le chemin réseau emprunté par votre requête. Smartproxy fournit ce chemin — une IP résidentielle, une région, une session stable — et CaptchaAI renvoie le token du défi CAPTCHA rencontré sur vos formulaires. Les deux briques restent indépendantes, et c'est ce qui rend le montage simple : vous les configurez et les journalisez séparément, et vous pouvez en remplacer une sans toucher à l'autre.

Deux briques, deux rôles à ne pas confondre

Brique Ce qu'elle fait Ce qu'elle ne fait pas
Smartproxy Achemine le trafic HTTP via une IP résidentielle, avec ciblage géographique et sessions Ne détecte ni ne résout un défi CAPTCHA
CaptchaAI Résout reCAPTCHA v2 et v3, Cloudflare Turnstile et Challenge, GeeTest v3, image/OCR et grilles N'exécute ni votre navigateur ni votre scénario

D'où un réflexe de diagnostic utile : quand une recette échoue, déterminez d'abord de quel côté se situe la panne. Un code 407 vient du proxy. Un CAPCHA_NOT_READY qui ne se résout jamais vient de la file de résolution. Un token refusé après injection vient presque toujours d'un changement d'IP entre le chargement de la page et l'envoi du formulaire.

Configurer le client HTTP derrière la passerelle

Pointez votre client HTTP sur l'endpoint Smartproxy avec les identifiants de votre tableau de bord, et gardez les appels à l'API CaptchaAI en dehors du proxy tant que vous n'avez pas de raison explicite de les y router. L'URL du proxy et la clé API vivent dans un secret ou un coffre, jamais dans le code source.

Exemple Python :

import os, requests
PROXY = {'https': os.environ['SMARTPROXY_URL']}
r = requests.get(os.environ['QA_BASE_URL'] + '/health', proxies=PROXY, timeout=30)
print(r.status_code)

Faites de ce contrôle de santé le premier test du pipeline : il prouve que les identifiants sont valides et que la sortie réseau est celle que vous croyez, avant tout appel de résolution.

Sessions collantes : garder la même IP du chargement à l'envoi

Un workflow CAPTCHA enchaîne trois étapes — chargement de la page, résolution du défi, envoi du formulaire. Si l'IP change entre la première et la troisième, le formulaire peut être rejeté alors même que le token est valide. Utilisez donc une session collante qui couvre tout le scénario, avec de la marge : 10 minutes suffisent pour un formulaire simple, un parcours multi-étapes en demande davantage. La facturation CaptchaAI portant sur les threads et non sur le nombre de résolutions, allonger une session ne change rien à votre coût.

Un cas concret : recette multi-région Paris / Montréal

Prenons une application SaaS hébergée chez un opérateur européen, dont le formulaire d'inscription est protégé par Cloudflare Turnstile. L'équipe QA veut vérifier que le parcours se comporte correctement pour un utilisateur français comme pour un utilisateur québécois.

Le montage tient en trois décisions : un worker au plus près de l'application (OVHcloud, Scaleway ou une région AWS eu-west-3 à Paris) pour ne pas ajouter de latence, une session Smartproxy ciblée par pays pour chaque variante, un appel CaptchaAI par défi rencontré. Vous mesurez ensuite le temps de bout en bout par région : si la variante québécoise met quinze secondes de plus, la cause est réseau, pas applicative.

Côté RGPD : comptes de test uniquement, données personnelles minimisées dans les journaux, rétention courte sur les traces d'exécution.

Ce que vous payez de chaque côté

Les deux facturations n'ont rien à voir. Smartproxy facture la bande passante résidentielle : ce sont vos pages et vos assets qui pèsent, pas les défis CAPTCHA. CaptchaAI facture des threads concurrents, résolutions illimitées par thread sur le mois : BASIC ($15/mois, 5 threads) suffit à une recette nocturne séquentielle, STANDARD ($30/mois, 15 threads) s'impose dès que l'intégration continue lance plusieurs scénarios en parallèle. La facturation CaptchaAI est en dollars US.

Pour dimensionner : comptez les défis CAPTCHA simultanément en vol pendant votre exécution la plus chargée, puis prenez le palier au-dessus.

Observabilité et journalisation

Instrumentez les appels de résolution : durée totale d'obtention du token, code retour HTTP, identifiant de tâche, région du proxy, taille de la file d'attente. Ces signaux alimentent vos tableaux de bord de QA et distinguent une lenteur réseau d'une lenteur de résolution.

Séparez les journaux par environnement et corrélez les identifiants avec votre traçage distribué (OpenTelemetry, par exemple) : vous rejouerez un scénario complet depuis un identifiant unique.

Limites du montage

L'usage doit rester interne ou explicitement autorisé. Une IP résidentielle n'est pas un laissez-passer : elle ne légitime pas l'automatisation d'un site tiers, et changer de région ne modifie en rien les conditions d'utilisation applicables. Si votre projet touche une source externe, la validation juridique passe avant la configuration technique.

Liste de contrôle avant lancement

  • Périmètre limité à vos applications ou à des sources autorisées par écrit.

  • Clé CaptchaAI et URL du proxy dans un secret CI ou un coffre, jamais dans le dépôt.

  • Session collante couvrant tout le parcours, du chargement à l'envoi du formulaire.

  • Durées d'appel, codes retour et région du proxy tracés à chaque exécution.

  • Retry idempotent avec backoff exponentiel borné sur les erreurs transitoires.

  • Threads du plan alignés sur le parallélisme réel de votre intégration continue.

FAQ

Un proxy résidentiel réduit-il le nombre de CAPTCHA rencontrés ?

Souvent, mais ni systématiquement ni de façon prévisible : la fréquence dépend du site, du parcours et du moment. Traitez le proxy comme un facteur de qualité du chemin réseau, jamais comme une alternative à la résolution.

Faut-il faire passer les appels à l'API CaptchaAI par Smartproxy ?

Non, pas par défaut. Les appels à in.php et res.php sont des échanges serveur à serveur : les router via le proxy ajoute de la latence et consomme de la bande passante facturée. Réservez cette option aux cas où la résolution doit partir de la même IP que le navigateur.

Combien de threads prévoir pour une recette parallélisée ?

Un thread correspond à un défi CAPTCHA en cours de résolution. Quatre scénarios en parallèle rencontrant chacun un défi à la fois demandent quatre threads : BASIC ($15/mois, 5 threads) convient. Passez au palier supérieur dès que les exécutions se chevauchent.

Le token est refusé après une résolution réussie : que vérifier ?

Dans l'ordre : l'IP a-t-elle changé entre le chargement et l'envoi (session collante trop courte), le token a-t-il été injecté dans le bon champ, l'envoi a-t-il eu lieu avant expiration. Le dernier point revient souvent sur les exécutions chargées.

Guides connexes

Mesurez vos propres temps de résolution derrière un proxy résidentiel avant d'industrialiser la recette. – Obtenez votre clé CaptchaAI.

Les commentaires sont désactivés pour cet article.