Ընտրված ուղին ուսումնասիրելիս օգտագործեք ավարտված պատասխանին կցված 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,
)

Scrapy 2.13.3-ի HTTP/1.1 մշակիչում հասցեն գալիս է պատասխանի կապի զուգընկերոջից, ոչ թե ելքի IP ծառայությունից։ Որոշ ուղիներ, ներառյալ զրո երկարության պատասխանները, կարող են այն թողնել None։ Այլ մշակիչներ կարող են այն լրացնել այլ կերպ։ None-ը ինքնին չի ապացուցում ուղիղ երթուղավորում։

Ելքի ստուգման համար հարցրեք վստահելի վերջնակետին նախատեսված պրոքսի քաղաքականության ներքո և պահեք հարցման ինքնությունը դիտարկման հետ։ Պտտվող միջնածրագրերը կարող են հետագա ստուգմանը տալ այլ վերջնակետ։

Վերահղումները նույնպես ստեղծում են ևս մեկ հարցում։ Վերջնական մետատվյալները նկարագրում են այդ փուլը․ ստուգեք վերահղումների պատմությունը և միջնածրագրերի ցանկացած նոր ընտրություն՝ փոխարենը այն առաջին URL-ի ուղու ապացույց համարելու։

Առնչվող հոդվածներ