Brûk it Request dat oan it foltôge antwurd ferbûn is by it besjen fan 'e keazen rûte. Hâld trije waarnimmings skieden:

FjildBetsjutting
response.request.meta.get('proxy')De keazen proxy-URL fan dizze oanfraach, as dy bestiet
response.ip_addressAdres fan 'e downloadhandler, mooglik None
Boarneferslach fan in fertroud bestimmingDe iepenbiere boarne dy't dêr waarnommen waard

Litte binnen in callback de URL-dielen mei legitimmaasjes fuort út 'e gewoane diagnostyk:

from urllib.parse import urlsplit

proxy = response.request.meta.get('proxy')
proxy_host = urlsplit(proxy).hostname if proxy else None
self.logger.info(
    'target_host=%s proxy_host=%s peer_ip=%s',
    urlsplit(response.url).hostname, proxy_host, response.ip_address,
)

Yn 'e HTTP/1.1-handler fan Scrapy 2.13.3 komt it adres fan 'e peer fan 'e ferbining fan it antwurd, net fan in útgong-IP-tsjinst. Guon paden, ynklusyf antwurden fan nul lingte, kinne it None litte. Oare handlers kinne it oars folje. None bewiist op himsels gjin direkte routing.

Foar in útgongskontrôle, freegje in fertroud einpunt ûnder it bedoelde proxybelied en hâld de identiteit fan 'e oanfraach by de waarnimming. Rotearend middleware kin in lettere kontrôle in oar einpunt jaan.

Ek trochferwizings meitsje in oare oanfraach. De definitive meta-gegevens beskeatse dat stadium; besjoch de trochferwizingsskiednis en elke nije seleksje fan middleware yn stee fan it as bewiis foar de rûte fan 'e earste URL te nimmen.

Relatearre artikelen