强制等待:
time.sleep(3)
这个等待时间是固定的,使用太多会占用运行速度,不太建议常用,特殊场景例外;
显示等待:
显式等待能自定义等待条件,在这个时间范围内,只要满足等待条件即可执行下一步代码操作,一般需要配合该类的until()和until_not()方法一起用。如果网页出现符合的条件,就不等待继续执行,如果没有则循环直到超时报错
# 默认是以每500ms轮询一次until中的条件,传入的超时时间是10s
WebDriverWait(driver,10).until(EC.presence_of_element_located((By.ID,'kw')))
# 设置每1s轮询一次until中的条件,传入的超时时间是10s
WebDriverWait(driver,10,1).until(EC.presence_of_element_located((By.ID,'kw')))
隐式等待:
它是一个全局的设置,作用范围是针对整个webdriver对象实例,
find_element,只对找元素起作用,对与输入,点击无效
driver.find_element(By.ID,'kw')