সম্পন্ন রেসপন্সের সাথে যুক্ত Request ব্যবহার করে তার নির্বাচিত রুট দেখুন। তিনটি পর্যবেক্ষণ আলাদা রাখুন:

ফিল্ডঅর্থ
response.request.meta.get('proxy')এই রিকোয়েস্টের নির্বাচিত প্রক্সি URL, যদি থাকে
response.ip_addressডাউনলোড হ্যান্ডলার-প্রদত্ত ঠিকানা, হতে পারে None
একটি বিশ্বস্ত গন্তব্যের উৎস প্রতিবেদনসেখানে পর্যবেক্ষিত পাবলিক উৎস

কলব্যাকের ভিতরে, ক্রেডেনশিয়ালযুক্ত 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-এর রুটের প্রমাণ হিসেবে ধরে নেওয়ার বদলে রিডাইরেক্ট ইতিহাস ও মিডলওয়্যারের যেকোনো পুনর্নির্বাচন দেখুন।

সম্পর্কিত নিবন্ধ