D'Proxyadress ännert sech am Log. D'Destinatioun erschéngt ni am Access-Log vum Proxy. Préift, ob Är Middleware d'Ufro iwwerhaapt bis zum Downloader duerchléisst.

An der Downloader-Middleware vu Scrapy bedeit d'Zeréckginn vun engem Request, datt dës Ufro nei geplangt gëtt. Et bedeit net „schéckt dësen Objet weider mat de Metadaten, déi ech just geännert hunn“.

Fir en Selektor, deen nëmmen eng Route wielt, ass déi wichteg Form:

def process_request(self, request):
    request.meta['proxy'] = self.choose_proxy()
    return None

Dëse Fragment weist déi aktuell Hookform; benotzt d'Middleware-Interface, déi déi installéiert Scrapy-Versioun ënnerstëtzt. De Selektor muss en gültegen Endpunkt zréckginn an e net verfügbare Pool ausdrécklech behandelen. En ëffentleche Crawl, deen ëffentlech Intermédiairen erlaabt, kann HTTP-Kandidaten aus der HTTP-Proxy-Lëscht fir dee Retourwäert huelen.

D'Zeréckginn vun None léisst de Rescht vun der Ufro-Middleware an den Downloader weiderfueren. D'Zeréckginn vun engem aneren Request ass nëtzlech, wann Dir Aarbecht bewosst ersetzt oder nei versicht, awer et brauch e Grond an eng Ausgangsbedingung.

E Rotator, deen all Kéier déiselwecht Ufro zréckgëtt, kann säin eegene Selektiounscode ëmmer erëm ausféieren, ouni je eng Verbindung zum Destinatioun opzebauen. Timeouts erhéijen oder méi Proxy-Ports opmaachen kann déi Kontrollfloss-Schleef net reparéieren.

Ënnersicht den Agang an d'Middleware, d'Retourverhalen an den éischten tatsächlechen Netzwierkversuch als getrennt Evenementer. Eng Logzeil „Proxy ausgewielt“ beweist nëmmen, datt de Selektor gelaf ass. Si beweist net, datt eng Ufro mam ausgewielten Endpunkt geschéckt gouf.

Ähnlech Artikelen