Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python용 Selenium WebDriver로 페이지가 로드될 때까지 기다립니다.

<시간/>

페이지가 Selenium webdriver로 로드될 때까지 기다릴 수 있습니다. 동기화가 있습니다. 암시적 및 명시적 대기를 설명하는 Selenium의 개념입니다. 페이지가 로드될 때까지 기다리려면 명시적 대기 개념을 사용합니다.

명시적 대기는 요소의 특정 동작에 대해 예상되는 조건에 종속되도록 설계되었습니다. 페이지가 로드될 때까지 기다리려면 presence_of_element_loaded 예상 조건을 사용해야 합니다. 특정 요소에 대해. 대기 시간이 경과하면 시간 초과 오류가 발생합니다.

명시적 대기 조건을 구현하려면 WebDriverWait의 도움을 받아야 합니다. 및 예상 조건 수업. 페이지에서 아래 요소가 있는지 확인하고 페이지가 로드되었는지 확인합니다.

Python용 Selenium WebDriver로 페이지가 로드될 때까지 기다립니다.

코드 구현

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.common.by import By
driver = webdriver.Chrome (executable_path="C:\\chromedriver.exe")
driver.get("https://www.tutorialspoint.com/about/about_careers.htm")
// presence_of_element_located expected condition wait for 8 seconds
try:
   w = WebDriverWait(driver, 8)
   w.until(expected_conditions.presence_of_element_located((By.TA
   G_NAME,"h1")))
   print("Page load happened")
exception TimeException:
   print("Timeout happened no page load")
driver.close()

출력

Python용 Selenium WebDriver로 페이지가 로드될 때까지 기다립니다.