selenium中等待机制
简介
在做web自动化时,一般要等待页面元素加载完成后,才能执行,否则会报找不到元素等待等各种错误,这样就要求在有些场景下加上等待。
最常见的三种等待方式:
- 隐式等待
- 显示等待
- 强制等待
隐式等待
设置一个等待时间,轮询查找是否出现,不出现就抛出异常,作用是全局,作用于整个session的生命周期
self.driver.implicity_wait(30)
显示等待
在代码中定义等待条件,触发该条件后再执行后续代码,直到超过设置的最长时间
from selenium.webdriver.support.wait import WebdriverWait
from selenium.webdriver.support import expected_conditions
# 设置最大10秒等待时间
WebDriverWait(driver, 10).unitl(expected_conditions.element_to_be_clickable(
By.TAF_NAME, "title"))