Սահմանել 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 փոխադրման սահմանաչափ | Թեստի սցենարից վարորդին ուղղված առանձին կառավարման հարցում |
Եթե այդ կառավարման կապը կախվի կամ վերցնի ոչ պիտանի վստահված սերվեր, դիտարկիչի նավիգացիայի բյուջեն դա չի շտկի։ Բազմաքայլ աշխատահոսքերին նույնպես պետք է ընդհանուր աշխատանքային բյուջե. վերահսկող գործարկիչը կարող է կանգնած առաջընթացը հայտնաբերել առանձին մեկ նավիգացիայից։
Պահեք հաղորդված ժամաչափը կամ փոխադրումը ձախողման գրառման մեջ։ Միայն նավիգացիայի սահմանաչափը չի տարբերում վստահված սերվերի կարգավորումը, նպատակակետի ուշացումը և էջի սեփական բեռնման վարքը։