ทำไมหัวข้อออกของ ProxyMesh อาจหายไปใน Scrapy
ProxyMesh อาจส่งข้อมูลเมตาเส้นทางบน CONNECT ก่อนที่ Scrapy จะได้รับคำตอบเว็บไซต์ที่เข้ารหัส ตรวจสอบขั้นตอนคำตอบที่ถือข้อมูลนั้นจริง
การไม่มี X-ProxyMesh-IP ใน HTTPS callback ของ Scrapy ไม่ได้พิสูจน์การกำหนดเส้นทางโดยตรง ใน HTTPS แบบอุโมงค์ ProxyMesh วางหัวข้อเส้นทางบนคำตอบ CONNECT; คำตอบเว็บไซต์ที่ตามมาอยู่ใน TLS จึงไม่รวมข้อมูลเมตาก่อนหน้านั้นโดยอัตโนมัติ
ที่ซึ่งหัวข้อปรากฏใน callback ให้อ่านแบบมีเงื่อนไข:
exit_ip = response.headers.get(b'X-ProxyMesh-IP')
if exit_ip is not None:
self.logger.info('Reported exit IP: %s', exit_ip.decode('ascii'))
นี่คือทางออกที่ผู้ให้บริการรายงานสำหรับการแลกเปลี่ยนนั้น ไม่ใช่ ชื่อโฮสต์ขาเข้าที่กำหนดค่าไว้
หากต้องการข้อมูลเมตาของอุโมงค์ ให้ใช้การผสานรวมตัวจัดการที่เข้ากันได้ซึ่งเปิดเผยหัวข้อ CONNECT ProxyMesh ดูแลหนึ่งตัวเพื่อจุดประสงค์นี้ ตรวจสอบเวอร์ชัน Scrapy ที่รองรับและตัวจัดการดาวน์โหลด การแยกวิเคราะห์ของแมงมุมไม่สามารถเปิดเผยหัวข้อที่ชั้นส่งไม่เคยให้มาได้
เชื่อมข้อมูลเมตากับการเชื่อมต่อของมัน การใช้เนื้ออุโมงค์ซ้ำไม่ได้สร้างคำตอบ CONNECT อีกอันสำหรับทุกหน้า สำหรับที่อยู่ต้นทางอิสระที่ปลายทางสังเกตเห็น ให้ตรวจสอบการเชื่อมต่อขาเข้าของปลายทางนั้น แทนที่จะถือหัวข้อผู้ให้บริการเป็นตัวตรวจจับ IP สากล