การหมดเวลาที่ waitForSelector หมายความว่าองค์ประกอบที่คาดไว้ไม่เป็นไปตามเงื่อนไขการรอ การเพิ่มพร็อกซีก่อนที่มันจะปรากฏไม่ได้พิสูจน์ว่าการเชื่อมต่อ TCP ของพร็อกซีหมดเวลาแล้ว

  1. เก็บหลักฐานของการนำทางไว้ บันทึก URL สุดท้าย สถานะของการตอบสนองหลักและคำขอที่ล้มเหลวที่เกี่ยวข้อง ก่อนการรอของตัวเลือก ใน Puppeteer การตอบสนองข้อผิดพลาด HTTP ไม่จำเป็นต้องถูกโยนเป็นข้อยกเว้นของการนำทางเสมอไป
  2. ตรวจสอบเอกสารที่ส่งมอบ ชื่อเรื่องหรือภาพหน้าจอที่ปิดบังอย่างระมัดระวังอาจเผยให้เห็นการท้าทายการเข้าสู่ระบบ หน้าที่ถูกปฏิเสธการเข้าถึง หรือหน้าเว็บภูมิภาคอื่น อาจเป็นไปได้ว่าหน้าที่ต้องการมีคำขอของแอปพลิเคชันที่ล้มเหลวด้วย ตรวจสอบตัวเลือกและเฟรมด้วย
  3. จัดการกับการท้าทายใด ๆ ที่แหล่งที่มา กำหนดค่าการพิสูจน์ตัวตนพร็อกซีที่รองรับก่อนการนำทางสำหรับการท้าทายจากพร็อกซี การท้าทายจากปลายทางเป็นของกระบวนการทำงานที่ได้รับอนุญาตของแอปพลิเคชัน และมีข้อมูลรับรองของตัวเอง

สิ่งนี้มักเผยให้เห็นหลักฐานที่เป็นประโยชน์ซึ่งมีอยู่ก่อนที่การรอองค์ประกอบจะกลายเป็นข้อยกเว้นแรกที่โค้ดของคุณรายงาน การให้รหัสผ่านของเว็บไซต์แก่พร็อกซีไม่สามารถแก้ไขเอกสารก่อนหน้านั้นได้

เลือกตัวจับเวลาหลังจากระบุการดำเนินการที่ล้มเหลว การนำทาง การตั้งค่าเครือข่าย และการรอองค์ประกอบมีขีดจำกัดที่แตกต่างกัน UI ที่ช้าจริงอาจทำให้การรอตัวเลือกนานขึ้นนั้นสมเหตุสมผล แต่หน้าแสดงข้อผิดพลาดก็ยังคงเป็นเอกสารที่ผิด

รักษาเซสชันเบราว์เซอร์และเส้นทางให้คงที่ขณะเปรียบเทียบ การเปลี่ยนพร็อกซี ตัวเลือก และสถานะเบราว์เซอร์ทั้งหมดในครั้งเดียวจะซ่อนว่าเงื่อนไขใดสำคัญ

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