1 sleep(time)
import time
time.sleep(10)
强制等待时间。不管浏览器是否加载完成,都必须强制等待10s时间
2 implicity_wait(time)
隐性等待是浏览器在time时间内加载完成则继续执行。
隐性等待对整个driver都有作用,只需要设置一次
3 WebDriverWait(driver, timeout, poll_frequency=0.5, ignored_exceptions=None)
driver:WebDriver 的驱动程序(Ie, Firefox, Chrome 或远程)
timeout:最长超时时间,默认以秒为单位
poll_frequency:休眠时间的间隔(步长)时间,默认为 0.5 秒
ignored_exceptions:超时后的异常信息,默认情况下抛 NoSuchElementException 异常
配合until和until_not使用
from selenium.webdriver.support.wait import WebDriverWait
driver = webdriver.Chrome()
driver.get("xxxxxx")
try:
WebDriverWait(driver, 20).until(lambda x : driver.find_element_by_xpath("xxxx") )
finally:
driver.close()