За да ја прегледате избраната рута, користете го Request поврзан со завршениот одговор. Држете три набљудувања одделно:

ПолеЗначење
response.request.meta.get('proxy')Избраниот прокси URL на ова барање, кога постои
response.ip_addressАдреса што ја дава обработувачот за преземање, можно е None
Извештај за изворот од доверливо одредиштеЈавниот извор забележан таму

Внатре во callback, испуштете ги деловите од URL со акредитиви од рутинската дијагностика:

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

Во обработувачот HTTP/1.1 на Scrapy 2.13.3 адресата доаѓа од партнерот на врската на одговорот, а не од услуга за излезна IP. Некои патеки, вклучително одговори со нулта должина, можат да ја остават None. Други обработувачи можат да ја пополнат поинаку. None само по себе не докажува директно рутирање.

За проверка на излезот прашајте доверлива крајна точка според предвидената прокси политика и чувајте го идентитетот на барањето со набљудувањето. Ротирачкиот middleware може да даде друга крајна точка за подоцнежна проверка.

Пренасочувањата создаваат уште едно барање. Завршните метаподатоци го опишуваат тој степен; прегледајте ја историјата на пренасочувања и секое повторно избирање од middleware, наместо да го сметате за доказ за рутата на првиот URL.

Поврзани статии