Selenium: 요소가 존재하고 표시되고 상호 작용할 수 있을 때까지 대기
Selenium에서 요소가 나타날 때까지 대기하기 위해 sleep()을 사용 바람직하지 않습니다. Selenium API는 보다 명시적인 대기 메커니즘을 제공하여 테스트의 신뢰성과 견고성을 보장합니다.
요소가 존재할 때까지 대기
요소가 존재할 때까지 대기 DOM에 있는 경우 WebDriverWait 및 EC.presence_of_element_location()을 사용하세요. 방법:
WebDriverWait(browser, 20).until(EC.presence_of_element_located((By.CSS_SELECTOR, ".reply-button"))).click()
요소가 표시될 때까지 대기
요소가 표시되고 크기가 0보다 커질 때까지 기다리려면 EC.visibility_of_element_location( ):
email = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "element_css"))).get_attribute("value")
요소가 될 때까지 기다리는 중 클릭 가능
요소가 표시되고 활성화될 때까지 기다리려면 EC.element_to_be_clickable()을 사용하세요.
WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".reply-button"))).click()
명시적 대기 사용
브라우저에서 이러한 대기 명령은 지정된 조건이 충족되거나 시간 초과될 때까지 테스트 실행을 일시 중지합니다. 발생합니다. 명시적 대기는 여러 가지 이점을 제공합니다.
참조:
위 내용은 셀레늄은 요소가 존재하고, 표시되고, 상호 작용할 수 있을 때까지 어떻게 효율적으로 기다릴 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!