Kun tutkit valittua reittiä, käytä valmiiseen vastaukseen liitettyä Requestia. Pidä kolme havaintoa erillään:

KenttäMerkitys
response.request.meta.get('proxy')Tämän pyynnön valittu välityspalvelimen URL, jos sellainen on
response.ip_addressLatauskäsittelijän antama osoite, mahdollisesti None
Luotetun kohteen lähderaporttiSiellä havaittu julkinen lähde

Jätä callbackin sisällä tunnistetietoja sisältävät URL-osat rutiinidiagnostiikasta pois:

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,
)

Scrapy 2.13.3:n HTTP/1.1-käsittelijässä osoite tulee vastauksen yhteyden vertaiselta, ei lähtevän IP:n palvelusta. Jotkin polut, mukaan lukien nollanpituiset vastaukset, voivat jättää sen Noneksi. Muut käsittelijät voivat täyttää sen eri tavoin. None ei itsessään todista suoraa reititystä.

Lähtevän yhteyden tarkistusta varten kysy luotettua päätepistettä aiottun välityspalvelinkäytännön mukaisesti ja pidä pyynnön identiteetti havainnon yhteydessä. Kiertävä väliohjelmisto voi antaa myöhemmälle tarkistukselle toisen päätepisteen.

Myös uudelleenohjaukset luovat uuden pyynnön. Lopulliset metatiedot kuvaavat sitä vaihetta; tarkista uudelleenohjaushistoria ja mahdollinen väliohjelmiston uusi valinta sen sijaan, että pitäisit sitä todisteena ensimmäisen URL:n reitistä.

Aiheeseen liittyvät artikkelit