پراکسی کے پیچھے Selenium صفحہ لوڈ ٹائم آؤٹ سیٹ کرنا
براؤزر نیویگیشن ٹائم آؤٹ سیٹ کریں اور اسے عنصر کے انتظار، اسکرپٹ ٹائم آؤٹ اور WebDriver کنٹرول کنکشن سے الگ پہچانیں۔
from selenium.common.exceptions import TimeoutException
driver.set_page_load_timeout(30)
try:
driver.get('https://example.com/')
except TimeoutException:
print('The navigation did not finish within its page-load timeout.')
نیویگیشن سے پہلے اسے اُس ڈرائیور پر سیٹ کریں جو پہلے ہی مطلوبہ پراکسی کے ساتھ کنفیگر ہے۔ Python کا طریقہ سیکنڈ لیتا ہے۔
منتخب شدہ صفحہ لوڈ حکمتِ عملی تکمیل کی تعریف کرتی ہے: normal مکمل دستاویز کی تیاری کا انتظار کرتا ہے، جبکہ eager پہلے کی حالت استعمال کرتا ہے۔ دونوں میں سے کوئی بھی مستقبل میں اسکرپٹ کے بنائے ہوئے ہر درخواست کا انتظار نہیں کرتا۔
| حد | محدود کام |
|---|---|
| صفحہ لوڈ ٹائم آؤٹ | نیویگیشن کا اپنی منتخب تکمیل حالت تک پہنچنا |
| ضمنی انتظار | عنصر کا مقام تلاش کرنے کی کوششیں |
| اسکرپٹ ٹائم آؤٹ | قابلِ اطلاق غیر ہم وقت اسکرپٹ عمل |
| رنر کا WebDriver ٹرانسپورٹ ٹائم آؤٹ | ٹیسٹ اسکرپٹ سے ڈرائیور تک الگ کنٹرول درخواست |
اگر وہ کنٹرول کنکشن لٹک جائے یا نامناسب پراکسی لے، تو براؤزر نیویگیشن بجٹ اسے درست نہیں کرتا۔ کثیر المرحل ورک فلو کو بھی مجموعی کام کا بجٹ درکار ہوتا ہے؛ نگرانی کرنے والا رنر رکی ہوئی پیش رفت کو ایک نیویگیشن سے الگ پہچان سکتا ہے۔
رپورٹ شدہ ٹائمر یا ٹرانسپورٹ کو ناکامی کے ریکارڈ میں رکھیں۔ صرف نیویگیشن ٹائم آؤٹ پراکسی سیٹ اپ، منزل کی تاخیر اور صفحے کے اپنے لوڈ رویے میں فرق نہیں کرتا۔