selenium的显示等待
Selenium的显示等待是一种等待方式,它会等待一定的时间或者直到某个条件满足才继续执行后续代码。它与隐式等待不同,隐式等待是等待一定的时间后继续执行后续代码。
显示等待的基本语法如下:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# 等待10秒钟,直到某个条件满足
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "myDynamicElement"))
)
上述代码中,WebDriverWait是等待的类,它需要传入两个参数:WebDriver对象和等待的时间。其中,WebDriver对象是指浏览器对象,等待的时间是指最长等待时间,如果在这个时间内条件没有满足,就会抛出TimeoutException异常。
在until()方法中,需要传入一个条件,这个条件是一个ExpectedCondition对象,它用于判断某个条件是否满足。在上述代码中,使用的是presence_of_element_located()方法,它表示等待某个元素出现在页面中。如果条件满足,就会返回该元素对象,否则就会等待一定时间后抛出异常。
除了presence_of_element_located()方法,还有很多其他的ExpectedCondition方法,比如visibility_of_element_located()、text_to_be_present_in_element()等,可以根据实际需求选择使用。
原文地址: http://www.cveoy.top/t/topic/bGPR 著作权归作者所有。请勿转载和采集!