Proxies per sol·licitud amb el middleware de proxy HTTP de Scrapy
Utilitzeu les metadades de sol·licitud de Scrapy i el seu middleware de proxy abans de copiar un middleware d'autenticació personalitzat antic dins d'un rastrejador.
El middleware de proxy HTTP de Scrapy llegeix un proxy de les metadades de la sol·licitud:
yield scrapy.Request(
'https://example.com/',
callback=self.parse,
meta={'proxy': 'http://203.0.113.10:8080'},
)
Substituïu el punt final de la documentació i manteniu el middleware activat. La llista de proxies HTTP ofereix candidats públics per a l'URL d'aquesta sol·licitud. Això selecciona la ruta de la sol·licitud; un pool de proxies necessita una lògica de selecció separada.
L'autenticació segueix el punt final seleccionat
El middleware integrat gestiona les credencials proporcionades mitjançant el seu URL de proxy compatible i la capçalera d'autorització associada. Escapa els caràcters reservats de l'URL i evita registrar aquest URL.
Un middleware separat no hauria de conservar una capçalera Basic per al proxy anterior després que canviï el punt final. Deixa que una sola capa gestioni la ruta i les seves credencials alhora.
Ordre de selecció i valors per defecte
Si un middleware de descàrrega personalitzat tria el proxy, executeu-lo abans que el middleware de proxy integrat processi la sol·licitud. Comproveu l'ordre i l'API de la versió instal·lada; les importacions scrapy.contrib obsoletes pertanyen a versions anteriors.
L'entorn del procés també pot proporcionar valors per defecte específics per esquema. Per a una sol·licitud deliberadament directa, utilitzeu el comportament documentat especial de les metadades proxy: una clau absent no significa necessàriament accés directe.
Inspeccioneu el resultat real. Un 407 fa referència a l'autenticació del proxy, mentre que un límit de velocitat o una denegació d'accés del lloc poden arribar després que la ruta hagi funcionat correctament.