פסקי זמן של waitForSelector ב-Puppeteer לאחר הוספת פרוקסי
בדקו את תגובת הניווט ואת המסמך שנמסר לפני שאתם מתייחסים להמתנה לרכיב ככשל בחיבור הפרוקסי.
פסק זמן ב-waitForSelector פירושו שהרכיב הצפוי לא עמד בתנאי ההמתנה שלו. הוספת פרוקסי לפני שהוא הופיע אינה מוכיחה שחיבור ה-TCP של הפרוקסי פג.
- שמרו את ראיות הניווט. רשמו את כתובת ה-URL הסופית, את מצב התגובה הראשית ואת הבקשות הכושלות הרלוונטיות לפני ההמתנה לבורר. ב-Puppeteer תגובת שגיאת HTTP אינה נזרקת בהכרח כחריגת ניווט.
- בדקו את המסמך שנמסר. הכותרת שלו או צילום מסך מושחר בקפידה יכולים לחשוף אתגר התחברות, עמוד של סירוב גישה או עמוד אזורי אחר. ייתכן שגם לעמוד המיועד היו בקשות יישום כושלות; בדקו גם את הבורר ואת המסגרת.
- טפלו בכל אתגר במקור שלו. הגדירו אימות פרוקסי נתמך לפני הניווט עבור אתגר של הפרוקסי. אתגר של היעד שייך לזרימת העבודה המורשית של היישום, ועם פרטי האימות שלו.
לעיתים קרובות זה חושף ראיות שימושיות שהתקיימו לפני שההמתנה לרכיב הפכה לחריגה הראשונה שהקוד שלכם דיווח עליה. מסירת סיסמה של אתר לפרוקסי אינה יכולה לתקן את המסמך הקודם הזה.
בחרו את הטיימר לאחר שזיהיתם את הפעולה הכושלת. לניווט, להגדרת הרשת ולהמתנות לרכיבים יש גבולות שונים. ממשק איטי באמת עשוי להצדיק המתנה ארוכה יותר לבורר; עמוד שגיאה יישאר המסמך השגוי.
שמרו על יציבות הפעלה של הדפדפן והמסלול בזמן ההשוואה. שינוי הפרוקסי, הבורר וכל מצב הדפדפן בניסיון אחד מסתיר איזה תנאי היה חשוב.