La plupart des projets de scraping échouent non pas à cause du code, mais à cause de la stratégie d'IP : mauvais type de proxy choisi, budget insuffisant ou gaspillé, architecture qui s'effondre dès que la cible change. Cet article transforme le choix du proxy en un processus de décision systématique.
Étape 1 : analysez votre cible
Le choix commence par la cible. Répondez à trois questions :
- Quel est le niveau de protection ? Test simple : envoyez 50 à 100 requêtes depuis une IP datacenter. Si tout passe sans encombre, la cible est tolérante ; si vous recevez des CAPTCHA/403, elle est protégée.
- Une session est-elle nécessaire ? S'il y a une connexion, un panier ou un formulaire en plusieurs étapes, vous avez besoin de sticky sessions.
- La localisation compte-t-elle ? Si le contenu ou les prix varient selon la région, un ciblage est nécessaire.
Étape 2 : choix du type
| Profil de la cible | Type adapté | Impact budgétaire |
|---|---|---|
| Tolérante (données ouvertes, petits sites) | Datacenter | Le plus bas — trafic illimité |
| Protection moyenne (actualités, petites annonces, catalogues) | Rotating residential | Au Go, moyen |
| Protection agressive (marketplaces, réservation) | Residential + ciblage par ville | Au Go, à planifier |
| Grandes cibles compatibles IPv6 | Subnet IPv6 | Un dixième du coût |
| Contenus des plateformes sociales | Mobile (dernier recours/hybride) | Au port, élevé |
Une architecture hybride est le plus souvent la plus efficace : les pages de listing via le datacenter, les pages de détail protégées via le residential.
Étape 3 : stratégie de rotation
- Rotation par requête : le choix par défaut pour des pages indépendantes.
- Sticky session : pour les parcours avec session ; isolez l'identifiant de session par thread.
- Rythme : délais aléatoires de 1 à 5 s ; augmentez le volume aux heures nocturnes de la cible.
- Politique de retry : n'insistez pas avec la même IP en cas de 403/429 ; utilisez une nouvelle IP et un backoff exponentiel.
Étape 4 : calculez le coût à l'avance
Une formule simple pour éviter les surprises sur les offres facturées au Go :
Trafic mensuel ≈ nombre de pages × taille moyenne d'une page × (1 + taux de retry)
Exemple : 20 000 pages par jour × 0,6 Mo (HTML seul) × 30 jours ≈ 360 Go/mois — un volume qui relève d'un plan entreprise. Ne pas télécharger les images, accepter le gzip et bloquer les ressources inutiles (blocage des images/CSS dans un navigateur headless) réduit le trafic de 50 à 80 %.
Étape 5 : liste de vérification avant production
- Je journalise le taux de réussite (2xx), le taux de CAPTCHA et les métriques de latence.
- Les identifiants du proxy sont dans des variables d'environnement, pas dans le code.
- Des pools de sessions distincts sont définis par cible.
- Le fichier robots.txt et les conditions d'utilisation de la cible ont été examinés.
- Plan de secours : si le pool principal sature, un second type prend le relais.
Peut-on commencer avec du gratuit ?
Pour un prototype, oui : les adresses de proxy gratuites sont idéales pour valider l'intégration du proxy dans votre code. Elles ne conviennent toutefois pas au scraping en production — variabilité, lenteur et réputation d'IP partagée sabotent le processus. Prototype → gratuit, production → pool payant : c'est le cheminement naturel.