insocks
Back to blog. Article language: BN EN ES FR HI ID PT RU UR VI ZH

Configurer des proxies dans Scrapy

Un proxy dans Scrapy achemine les requêtes via un point de terminaison contrôlé pour collecter des données publiques de manière fiable. Une configuration sécurisée de proxy Scrapy facilite la localisation, la répartition de charge, la surveillance et le crawling stable. Aux États-Unis, utilisez des proxies uniquement pour des flux de travail publics légaux, dans le respect de robots.txt, des conditions d'utilisation et des limites de requêtes.

Pourquoi les projets Scrapy ont besoin de proxies

Les projets Scrapy nécessitent des proxies lorsqu'une connexion directe est trop limitée pour une collecte fiable de données publiques. Un flux de travail Scrapy proxy bien planifié aide les équipes à réduire les échecs de connexion, à comparer les pages régionales et à garder les tests mesurables.

✅ Scénarios légaux :

  • Surveillance des pages produits publiques
  • QA pour le contenu régional
  • Vérifications de disponibilité et d'uptime
  • Validation interne de données

Quel type de proxy convient le mieux à Scrapy

Le meilleur type de proxy dépend de la stabilité, de la durée de session, du prix et de la région. Pour des vérifications publiques longue durée, un plan de proxy rotatif Scrapy peut répartir les requêtes sur des routes approuvées sans transformer l'automatisation en spam.

TypeStabilitéIdéal pour
RésidentielÉlevéePages publiques locales
MobileMoyenneVérifications web mobiles
ISPÉlevéeSessions longues
DatacenterMoyenneQA interne

Ce dont vous avez besoin avant de commencer

Avant la configuration, préparez Scrapy, les détails de route, les identifiants et une URL de test. Un plan de middleware proxy Scrapy nécessite également une propriété claire, un stockage sécurisé et des journaux.

✅ Liste de contrôle :

  • Projet Scrapy
  • IP et port
  • Identifiant et mot de passe
  • URL de test
  • Limites de requêtes
  • Journalisation des erreurs

Comment configurer un proxy unique dans Scrapy étape par étape

Une seule route est le premier test le plus simple. Dans cette configuration, l'accès proxy Scrapy est transmis via les métadonnées de requête et géré par le middleware intégré.

  • Étape 1. Activer le middleware proxy.
  • Étape 2. Ajouter la route dans les métadonnées de requête.
  • Étape 3. Lancer un spider.
  • Étape 4. Vérifier le code de statut.

class DemoSpider(scrapy.Spider):

name = "demo"

start_urls = ["https://example.com"]

def start_requests(self):

for url in self.start_urls:

yield scrapy.Request(

url,

meta={"proxy": "http://user:pass@host:port"}

)

Utilisez httpproxymiddleware pour les flux de travail approuvés et gardez les secrets hors du code.

Comment ajouter l'authentification proxy

L'authentification confirme que votre script est autorisé à utiliser la route. Pour les points de terminaison payants, le middleware proxy Scrapy doit protéger les identifiants et prendre en charge l'authentification proxy sans exposer les mots de passe dans les dépôts.

import base64

token = base64.b64encode(b"user:pass").decode()

headers = {"Proxy-Authorization": f"Basic {token}"}

yield scrapy.Request(

"https://example.com",

headers=headers,

meta={"proxy": "http://host:port"}

)

Stockez les identifiants dans des variables d'environnement. Renouvelez les mots de passe après les changements de personnel.

Comment faire tourner les proxies avec un middleware

La rotation permet de répartir les requêtes sur les points de terminaison approuvés. Un flux de travail Scrapy proxy rotatif soigné change les routes entre les requêtes tout en gardant les délais, les journaux et les limites clairs.

  • Étape 1. Stocker le pool approuvé.
  • Étape 2. Choisir une route pour chaque requête.
  • Étape 3. L'attacher dans le middleware.
  • Étape 4. Journaliser l'ID de route.

class ProxyMiddleware:

def __init__(self, routes):

self.routes = routes

@classmethod

def from_crawler(cls, crawler):

return cls(crawler.settings.getlist("PROXY_POOL"))

def process_request(self, request, spider):

request.meta["proxy"] = random.choice(self.routes)

Un middleware de proxy rotatif ne doit jamais remplacer le contrôle de débit ou la vérification de conformité.

Comment régler DOWNLOAD_DELAY et AUTOTHROTTLE

Les paramètres de délai maintiennent les crawls stables. Une configuration de proxy rotatif Scrapy doit toujours utiliser le délai de téléchargement et l'autothrottle pour éviter les pics de trafic soudains.

DOWNLOAD_DELAY = 2

AUTOTHROTTLE_ENABLED = True

AUTOTHROTTLE_START_DELAY = 1

AUTOTHROTTLE_MAX_DELAY = 10

CONCURRENT_REQUESTS = 8

Suivez le temps de réponse avant de modifier les paramètres.

Comment gérer les tentatives et les blocages

Les tentatives doivent permettre de se remettre des problèmes réseau temporaires, pas de forcer un accès répété. Une configuration proxy Scrapy doit utiliser des limites de tentatives modérées, des pauses claires et des journaux indiquant pourquoi une requête a échoué.

💡 Définissez RETRY_TIMES après avoir testé les taux d'erreur normaux.

✅ À faire :

  • Utiliser de petits lots
  • Respecter robots.txt
  • Surveiller les codes de statut

❌ À éviter :

  • Réessayer indéfiniment
  • Ignorer les schémas 403 ou 429
  • Surcharger les pages publiques

Comment vérifier que les proxies fonctionnent dans Scrapy

La vérification confirme que les requêtes passent par le point de terminaison attendu avant le début de la collecte réelle. Un flux de middleware proxy Scrapy testé doit afficher l'IP, la région, le code de réponse et le timing.

Élément à vérifierRésultat attendu
Adresse IPPoint de terminaison sélectionné
RégionZone planifiée
Code de statutRéponse normale
VitesseTiming stable

Erreurs de proxy Scrapy courantes et corrections

La plupart des échecs proviennent d'identifiants incorrects, de routes mortes, de ports ou de paramètres trop rapides. Si les tests proxy Scrapy échouent, vérifiez une variable à la fois au lieu de modifier l'ensemble du spider.

❌ Problèmes courants :

  • Connexion refusée
  • Délai d'attente dépassé
  • Échec d'authentification
  • Trop de tentatives
ErreurCauseCorrection
RefuséeHôte incorrectRecopier la route
Délai dépasséPoint de terminaison lentTester une autre route
Échec authIdentifiants incorrectsRenouveler les identifiants
429Trop rapideAugmenter le délai

Notes sur le scraping éthique (États-Unis)

Scrapy peut être utilisé de manière responsable pour les données publiques, la QA, la surveillance et la recherche. Un flux de travail proxy Scrapy légal respecte robots.txt, les conditions du site, les limites des données publiques et les limites de requêtes.

Pour une utilisation aux États-Unis, documentez l'objectif de la tâche, la source, le propriétaire et la conservation. Les proxies doivent soutenir la conformité, pas masquer un comportement abusif.

Choisir un proxy fiable pour Scrapy

Un bon fournisseur offre des routes stables, des régions claires, un support et des tarifs en $. Pour les projets avancés, un proxy SOCKS5 Scrapy peut être utile lorsque le fournisseur et le connecteur le prennent en charge.

CaractéristiqueAvantage
Routes stablesMoins d'échecs
Régions clairesMeilleurs tests
SupportCorrections plus rapides
TarifsContrôle du budget

Essayez une démo pour un spider, achetez des proxies après validation, ou inscrivez-vous pour un accès complet.

Points clés à retenir

TL;DR : les proxies aident Scrapy à exécuter des flux de travail publics légaux via des routes contrôlées. Un proxy Scrapy doit correspondre à la cible, aux limites de requêtes et aux journaux. La rotation fonctionne mieux avec des délais et une surveillance. L'authentification doit être stockée en toute sécurité.

Questions fréquentes

Comment configurer un proxy dans Scrapy ?

Ajoutez la route aux métadonnées de requête et activez le middleware approprié.

Comment faire tourner les proxies dans Scrapy ?

Utilisez un middleware personnalisé qui sélectionne une route approuvée pour chaque requête.

Scrapy prend-il en charge les proxies SOCKS5 ?

Oui, avec le bon connecteur et le support du fournisseur.

Comment ajouter l'authentification proxy dans Scrapy ?

Transmettez les identifiants de manière sécurisée via les en-têtes, le format de route ou les variables d'environnement.

Comment éviter les blocages lors du scraping avec Scrapy ?

Respectez robots.txt, les conditions du site, les limites de requêtes et les limites de données.

2026-07-15