Selenium sayfa yükleme zaman aşımını proxy arkasında ayarlama
Tarayıcı gezinme zaman aşımını ayarlayın ve bunu öğe beklemelerinden, betik zaman aşımlarından ve WebDriver denetim bağlantısından ayırın.
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.')
Bunu gezinmeden önce amaçlanan proxy ile zaten yapılandırılmış sürücüde ayarlayın. Python yöntemi saniye alır.
Seçilen sayfa yükleme stratejisi tamamlanmayı tanımlar: normal tam belge hazır olmasını beklerken eager daha erken bir durumu kullanır. İkisi de betiğin gelecekte oluşturacağı her isteği beklemez.
| Sınır | Sınırlanan iş |
|---|---|
| Sayfa yükleme zaman aşımı | Gezinmenin seçilen tamamlanma durumuna ulaşması |
| Örtük bekleme | Öğe konumlandırma denemeleri |
| Betik zaman aşımı | Uygulanabilir eşzamansız betik yürütme |
| Çalıştırıcının WebDriver aktarım zaman aşımı | Test betiğinden sürücüye ayrı denetim isteği |
Bu denetim bağlantısı takılırsa veya uygunsuz bir proxy kullanırsa, tarayıcı gezinme bütçesi bunu düzeltmez. Çok adımlı iş akışları için ayrıca genel bir iş bütçesi gerekir; denetleyici bir çalıştırıcı, tıkanmış ilerlemeyi tek bir gezinmeden ayrı olarak algılayabilir.
Bildirilen zamanlayıcıyı veya aktarımı hata kaydında tutun. Tek başına gezinme zaman aşımı, proxy kurulumunu, hedef gecikmesini ve sayfanın kendi yükleme davranışını birbirinden ayırmaz.