绝对延时
等待规定时间后,直接执行后面的代码
time.sleep(1)
隐性延时
最长是30秒,如果30秒内,资源全部加载完成,那么执行后续的代码,
30秒内没有加载完成,也会继续执行后续代码
driver.implicitly_wait(30)
显性等待
等待时长20秒,间隔0.5秒去查询一次目标元素是否加载完成
20秒内加载完成后,执行后续的代码,最长等待20秒,没有加载也会继续执行
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver.get('https://huilansame.github.io')
locator = (By.LINK_TEXT, '优快云')
20 秒是最长等待时间, 0.5 秒是间隔轮询时间
WebDriverWait(driver,20,0.5).until(EC.presence_of_element_located(locator))