Поставување временско ограничување за вчитување страница во 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 користи поранeшна состојба. Ниту една не чека секое идно барање создадено од скрипта.
| Ограничување | Ограничена работа |
|---|---|
| Временско ограничување за вчитување страница | Навигација што ја достигнува избраната состојба на завршување |
| Имплицитно чекање | Обиди за лоцирање на елемент |
| Временско ограничување на скрипта | Применливо асинхроно извршување на скрипта |
| Временско ограничување на WebDriver транспортот на извршувачот | Одделното контролно барање од тест-скриптата до драјверот |
Ако таа контролна врска се заглави или земе несоодветно прокси, буџетот за навигација на прелистувачот не го решава тоа. Работните текови со повеќе чекори исто така бараат вкупен буџет за работата; надзорниот извршувач може да открие застој во напредокот одделно од една навигација.
Задржете го пријавениот тајмер или транспорт во записот за грешка. Само временското ограничување на навигацијата не разликува поставување на прокси, доцнење на одредиштето и сопственото однесување при вчитување на страницата.