Opérer un crawling massif de manière stable avec des proxies pour le web scraping
Socks5Proxy vend des proxies de centre de données partagés pour le scraping web par IP (à partir de $0.0179/IP/mois), chaque IP supportant HTTP et SOCKS5 pour une connexion directe avec Python, Node.js, Scrapy, etc.
Pourquoi avez-vous besoin d'un proxy pour le web scraping ?
Le web scraping consiste à lire des pages publiques de sites avec un programme pour collecter les informations nécessaires. Si une IP envoie trop de requêtes en peu de temps, le site cible peut ralentir la connexion, afficher un CAPTCHA ou bloquer temporairement l'accès. Un proxy permet de répartir les requêtes sur plusieurs IP, réduisant ainsi le nombre de requêtes par IP à un niveau similaire à celui d'un utilisateur humain.
Les pages affichant des informations variables par pays (prix, résultats de recherche, cartes) nécessitent une IP locale pour des données précises. Socks5Proxy fournit des IP datacenter et ISP de multiples pays, permettant de collecter des résultats internationaux avec un seul crawler.
Les proxies accélèrent aussi la collecte. Répartir les requêtes sur plusieurs IP permet d'ouvrir plus de connexions simultanées, traitant ainsi plus de pages en moins de temps.
Quel type de proxy convient au scraping ?
La plupart des crawlings commencent avec des proxies de centre de données partagés, ce qui est le plus économique. Jusqu'à 3 utilisateurs partagent une IP, ce qui réduit les coûts, et les remises augmentent avec la taille du plan, ce qui permet de répartir les requêtes sur des milliers d'IP. 1 To/mois de bande passante et 500 connexions simultanées sont inclus, ce qui suffit pour la collecte HTML standard.
Si le site cible filtre strictement les plages d'IP de centre de données, les proxies ISP partagés sont une bonne option. Ces IP sont enregistrées auprès de fournisseurs d'accès Internet, ce qui les fait ressembler à des utilisateurs résidentiels tout en offrant la vitesse des centres de données.
Pour collecter des pages nécessitant une connexion ou maintenir une session sur une longue durée, choisissez un proxy privé ou dédié. Cela évite que vos requêtes ne se mélangent avec celles d'autres utilisateurs, réduisant ainsi les risques de coupure de session.
| Situation | Produits recommandés | Prix de départ (1 IP, mois) |
|---|---|---|
| Collecte massive de pages publiques | Datacenter partagé | $0.0179 |
| Sites bloquant souvent les plages de centre de données | ISP partagé | $0.1800 |
| Maintenir la session de connexion | Datacenter privé | $0.4680 |
| Sessions longues sur sites sensibles | ISP dédié | $1.51 |
Comment bien faire tourner mes IPs ?
Les IP Socks5Proxy sont fixes pendant la durée du forfait. Pour la rotation : lire la liste téléchargée comme un tableau, utiliser chaque IP séquentiellement. En cas d'échec, mettre l'IP en pause temporaire et passer à la suivante.
Il est important de définir un intervalle de requêtes par IP pour un même domaine. Par exemple, avec 1 000 IP pour collecter un site, en effectuant une requête toutes les 10 secondes par IP, vous pouvez lire 100 pages par seconde. Augmenter le nombre d'IP permet de maintenir la charge par IP tout en augmentant la vitesse globale.
Pour les tâches nécessitant des sessions, il faut au contraire garder la même IP pendant toute l'opération. Pour les flux dépendant des cookies comme les paniers ou la pagination, liez une IP à une tâche, puis passez à l'IP suivante.
- Changer d'IP à chaque requête : collecte massive de pages de détails publiques
- IP fixe par tâche : pagination, collecte après login
- Mettez les IP en échec en pause pendant 5-10 minutes avant de les réutiliser
- Définir un intervalle entre requêtes par domaine et par IP
À quelle vitesse devez-vous envoyer les requêtes ?
Comme chaque site a une limite de vitesse différente, il est plus sûr de commencer lentement et d'augmenter progressivement. Commencez avec quelques requêtes par minute par IP, enregistrez les codes de réponse et les temps de réponse, puis ajustez juste en dessous du point où le taux d'erreurs commence à augmenter.
Une augmentation des codes 429 ou 403 est un signal pour réduire la vitesse ou augmenter le nombre d'IP. Vérifiez également si des CAPTCHAs apparaissent dans les réponses. Parfois, le code statut est 200 mais le contenu diffère. Ajouter une étape pour vérifier la présence des éléments attendus améliore la qualité des données.
Les en-têtes sont cruciaux. Utilisez des User-Agent et Accept-Language réalistes, et adaptez les en-têtes linguistiques à l'IP utilisée pour des résultats naturels.
SOCKS5 ou HTTP : lequel utiliser ?
Si vous ne collectez que des pages web, un proxy HTTP suffit et sa configuration est la plus simple. Les sites HTTPS sont également transmis de manière chiffrée via la méthode CONNECT.
SOCKS5 transmet toutes les connexions (même non-HTTP) et permet une résolution DNS côté proxy, masquant ainsi vos requêtes DNS. Utilisez socks5h avec Python ou --socks5-hostname avec cURL pour que le proxy résolve les noms de domaine.
Socks5Proxy fournit des ports HTTP et SOCKS5 distincts pour chaque ligne proxy, permettant d'utiliser la même IP via les deux protocoles.
Comment connecter la liste de proxies à votre crawler ?
Dans l'écran de vos proxies du tableau de bord, téléchargez la liste dans le format de votre choix ou obtenez-la via l'API pour que votre crawler la lise au démarrage. Vous pouvez choisir parmi les formats ip:port:user:pass, user:pass@ip:port, socks5://user:pass@ip:port, http://user:pass@ip:port, CSV, etc.
Si votre serveur a une IP fixe, l'authentification par IP simplifie la configuration. Ajoutez jusqu'à 10 IPv4 dans le dashboard pour vous connecter avec juste ip:port, sans credentials. Évite de stocker des mots de passe dans le code lors du déploiement multi-serveurs.
Les méthodes de connexion pour Python requests, Scrapy, Node.js et cURL sont résumées avec des exemples de code sur la page du guide.
Comment calculer le coût du scraping ?
Le nombre d'IP nécessaires dépend des pages vues quotidiennement et des requêtes par IP. Pour 1 000 000 de pages quotidiennes distribuées à ≤1 000 requêtes par IP par jour, vous aurez besoin de 1 000 IP. Les forfaits de datacenter partagés offrent des remises croissantes avec des nombres d'IP plus importants, jusqu'à 40 % maximum.
Pour des projets de longue durée, l'abonnement annuel économise 30%. Le paiement est déduit du solde, et les recharges de $100+ offrent un bonus augmentant le crédit utilisable.
Quelles bonnes pratiques pour un scraping responsable ?
Collectez uniquement les données publiques, dans le respect des CGU, règles robots.txt et législations locales. Espacez les requêtes pour éviter de surcharger les serveurs, et utilisez un cache pour éviter les lectures répétées.
La collecte légale de données (comparaison de prix, recherche, analyse de marché, moteurs de recherche) est vitale pour de nombreux services. Une utilisation conforme maintient un pool d'IPs propre, bénéfique à tous.