web自动化设置等待时间的3种方式

(1)强制固定等待:(无论如何都会等待相应的时间)

time.sleep() 优点:用法非常简单,一般用于项目的调试,或者用于等待元素状态、本文发生变化

确定:等待时间固定,脚本中大量的使用,会导致脚本的运行效率低

(2)隐式等待/全局:(只有在元素不存在才会生效)

driver.implicitiy_wait(30)

设置一次之后(隐式等待只需设置一次),全局有效,在元素没有出现前只等待设置的最多时间,在等待时间内,该元素出现就停止等待。

(3)显示等待:

可针对每一个元素进行单独设置,等待条件更加灵活(显示和隐式同时设置,以最长的等待时间为准)

from selenium.Webdriver.support.wait import WebDriverWait

from selenium.Webdriver.support import expected_conditions as EC

WebDriverWait(ki, 5).until(EC.text_to_be_present_in_element((xpath, "//*[@class=login-error-msg]"), 请输入密码))
经验分享 程序员 微信小程序 职场和发展