ရွေးချယ်ထားသော လမ်းကြောင်းကို စစ်ဆေးရန် ပြီးစီးသော တုံ့ပြန်မှုနှင့် တွဲထားသော 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 ၏ လမ်းကြောင်းအတွက် သက်သေအဖြစ် မယူဆဘဲ ပြန်ညွှန်မှု မှတ်တမ်းနှင့် မစ်ဒယ်ဝဲလ်၏ ပြန်ရွေးချယ်မှု တစ်စုံတစ်ရာကို စစ်ဆေးပါ။

ဆက်စပ်ဆောင်းပါးများ