Налаштування тайм-ауту завантаження сторінки 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 у раннері | Окремий керівний запит від тестового скрипта до драйвера |
Якщо це керівне з'єднання зависає або використовує невідповідний проксі, бюджет навігації браузера це не виправить. Багатокроковим робочим процесам потрібен і загальний бюджет завдання; наглядовий раннер може виявити зупинений прогрес окремо від однієї навігації.
Зберігайте повідомлений таймер або транспорт у записі про помилку. Лише тайм-аут навігації не розрізняє налаштування проксі, затримку призначення й власну поведінку сторінки під час завантаження.