1.设置元素等待可以更灵活的制定等待定位元素的时间,增强脚本的简装修,提高执行效率。
2.元素等待类型
1.强制等待 设置固定的等待时间 使用sleep()方法
from time import sleep
#强制等待5S
sleep(5)
2.隐式等待 针对全部元素设置的等待时间
driver.implicitly_wait(20)
3.显示等待 针对某个元素来设置等待时间
方法WebDriverWait格式参数如下:
from selenium.webdriver.support.uiimport WebDriverWait
WebDriverWait(driver,timeout,poll_frequency=0.5,ignored_exception=None)
driver:WebDriver
timeout:最长超时时间,默认为0.5秒
poll_frequency:休眠时间的间隔时间,默认为0.5秒
ignored_exceptions:超时后的异常信息,默认情况下抛出NoSuchElementException异常
WebDriverWait()一般和until或until_not方法配合使用,另外,lambda提供了一个运行时动态创建函数的方法
实例:
from selenium.webdriver.support.uiimport WebDriverWait
WebDriverWait(driver,10).until(lambda x:x.find_element_by_id("com.systoon.iningde:id/richscan"))
网友评论