HTTP proxy middleware ของ Scrapy อ่านพร็อกซีจากเมทาดาทาคำขอ:

yield scrapy.Request(
    'https://example.com/',
    callback=self.parse,
    meta={'proxy': 'http://203.0.113.10:8080'},
)

แทนที่ปลายทางในเอกสารและเปิด middleware ไว้ รายการพร็อกซี HTTP เสนอผู้สมัครสาธารณะสำหรับ URL ของคำขอนี้ สิ่งนี้เลือกเส้นทางของคำขอ พูลพร็อกซีต้องมีตรรกะการเลือกแยกต่างหาก

การตรวจสอบสิทธิ์เป็นไปตามปลายทางที่เลือก

middleware ที่มีอยู่จัดการข้อมูลรับรองที่ให้มาผ่าน URL พร็อกซีที่รองรับและส่วนหัวการอนุญาตที่เกี่ยวข้อง escape อักขระ URL ที่สงวนไว้ และหลีกเลี่ยงการบันทึก URL นั้น

middleware แยกไม่ควรเก็บส่วนหัว Basic สำหรับพร็อกซีก่อนหน้าหลังจากปลายทางเปลี่ยน ให้ชั้นเดียวจัดการเส้นทางและข้อมูลรับรองของมันร่วมกัน

ลำดับการเลือกและค่าเริ่มต้น

หาก downloader middleware แบบกำหนดเองเลือกพร็อกซี ให้รันก่อนที่ proxy middleware ที่มีอยู่จะประมวลผลคำขอ ตรวจสอบลำดับและ API ของรุ่นที่ติดตั้ง การนำเข้า scrapy.contrib ที่ล้าสมัยเป็นของรุ่นเก่ากว่า

สภาพแวดล้อมของกระบวนการยังสามารถให้ค่าเริ่มต้นเฉพาะสคีมา สำหรับคำขอที่ตั้งใจให้ตรงโดยเจตนา ให้ใช้พฤติกรรมพิเศษที่บันทึกไว้ของเมทาดาทา proxy: การไม่มีคีย์ไม่ได้หมายถึงการเข้าถึงโดยตรงเสมอไป

ตรวจสอบผลลัพธ์จริง 407 เกี่ยวกับการตรวจสอบสิทธิ์พร็อกซี ในขณะที่ขีดจำกัดอัตราหรือการปฏิเสธการเข้าถึงของเว็บไซต์อาจมาหลังจากเส้นทางทำงานอย่างถูกต้อง

บทความที่เกี่ยวข้อง