显式等待 WebDriverWait():是针对于某个特定的元素设置的等待时间。
class WebDriverWait(object):
def init(self, driver, timeout, poll_frequency=POLL_FREQUENCY, ignored_exceptions=None):
总体说明:在设置时间timeout内,每隔一段时间poll_frequency(默认0.5秒) 检测一次当前页面,元素是否存在,如果超过设置时间还检测不到则抛出异常ignored_exceptions,如果元素存在则立即反馈。
参数解释:
init()方法需要传参 driver、timeout、poll_frequency、ignored_exceptions;
driver:webdriver的驱动;
timeout:最长超时时间,默认以秒为单位;
poll_frequency:休眠时间(步长)的间隔检测间隔时间,默认0.5s;
ignored_exceptions: 超时后的异常信息,默认情况下抛 “NoSuchElementException"异常;
官方的举例:
element = WebDriverWait(driver, 10).until(lambda x: x.find_element_by_id(“someId”))
is_disappeared = WebDriverWait(driver, 30, 1, (ElementNotVisibleException)).until_not(lambda x: x.find_element_by_id(“someId”).is_disp