Proxys pro Ufro mat Scrapys HTTP-Proxy-Middleware
Benotzt Scrapy-Ufro-Metadaten an hir Proxy-Middleware, ier Dir eng al personaliséiert Authentifikatiouns-Middleware an e Crawler kopéiert.
Scrapys HTTP-Proxy-Middleware liest e Proxy aus den Ufro-Metadaten:
yield scrapy.Request(
'https://example.com/',
callback=self.parse,
meta={'proxy': 'http://203.0.113.10:8080'},
)
Ersetzt den Dokumentatiouns-Endpunkt a loosst d'Middleware aktivéiert. D'HTTP-Proxy-Lëscht bitt ëffentlech Kandidaten fir d'URL vun dëser Ufro. Dëst wielt d'Route vun der Ufro; e Proxy-Pool brauch eng separat Auswahrlogik.
D'Authentifikatioun follegt dem gewielten Endpunkt
Déi integréiert Middleware geréiert d'Zougangsdaten, déi iwwer seng ënnerstëtzt Proxy-URL an den assoziéierten Autorisatiouns-Header geliwwert ginn. Escape reservéiert URL-Zeechen a vermeit dës URL ze loggen.
Eng separat Middleware soll no der Ännerung vum Endpunkt keen Basic-Header fir de fréiere Proxy behalen. Loosst eng Schicht d'Route an hir Zougangsdaten zesummen geréieren.
Auswahr-Reiefolleg an Standardwäerter
Wann eng personaliséiert Downloader-Middleware de Proxy wielt, féiert se aus, ier déi integréiert Proxy-Middleware d'Ufro veraarbecht. Kontrolléiert d'Reiefolleg an d'API vun der installéierter Versioun; veralterte scrapy.contrib-Importe gehéieren zu eelere Versiounen.
D'Prozessëmwelt kann och schema-spezifesch Standardwäerter liwweren. Fir eng bewosst direkt Ufro benotzt dat dokumentéiert speziellt Verhalen vun den proxy-Metadaten: e fehlende Schlëssel heescht net onbedéngt direkten Zougang.
Préift dat tatsächlech Resultat. En 407 betrëfft d'Proxy-Authentifikatioun, während eng Geschwindegkeetsgrenz oder eng Zougangsverweigerung vun enger Websäit eréischt kënnt, nodeems d'Route richteg funktionéiert huet.