مهلات waitForSelector في Puppeteer بعد إضافة وكيل
افحص استجابة التنقل والمستند المُسلَّم قبل اعتبار انتظار عنصر فشلاً في اتصال الوكيل.
تعني مهلة waitForSelector أن العنصر المتوقع لم يستوفِ شرط انتظاره. وإضافة وكيل قبل ظهوره لا تثبت أن اتصال TCP الخاص بالوكيل قد انتهت مهلته.
- احتفظ بأدلة التنقل. سجّل عنوان URL النهائي، وحالة الاستجابة الرئيسية والطلبات الفاشلة ذات الصلة قبل انتظار المحدِّد. في Puppeteer لا يُطرح رد خطأ HTTP بالضرورة كاستثناء تنقل.
- افحص المستند المُسلَّم. قد يكشف عنوانه أو لقطة شاشة مُحجَّبة بعناية عن تحدٍّ لتسجيل الدخول أو صفحة رفض وصول أو صفحة إقليمية مختلفة. وقد تكون الصفحة المقصودة قد شهدت طلبات تطبيق فاشلة أيضاً؛ فافحص المحدِّد والإطار كذلك.
- عالج أي تحدٍّ عند مصدره. اضبط مصادقة الوكيل المدعومة قبل التنقل عند وجود تحدٍّ من الوكيل. أما تحدّي الوجهة فيخص سير العمل المصرَّح به للتطبيق، وله بيانات اعتماده الخاصة.
يكشف هذا غالباً عن أدلة مفيدة كانت موجودة قبل أن يصبح انتظار العنصر أول استثناء يبلّغ عنه كودك. وتسليم كلمة مرور موقع إلى الوكيل لا يمكنه تصحيح ذلك المستند السابق.
اختر المؤقّت بعد تحديد العملية الفاشلة. فللتنقل وإعداد الشبكة وانتظار العناصر حدود مختلفة. وقد تبرّر واجهة مستخدم بطيئة فعلاً مهلة أطول للمحدِّد؛ أما صفحة الخطأ فستبقى المستند الخطأ.
أبقِ جلسة المتصفح والمسار ثابتين أثناء المقارنة. فتغيير الوكيل والمحدِّد وكل حالة المتصفح في محاولة واحدة يخفي أي شرط كان مهماً.