selenium的隐式等待和显式等待
2019-02-16 本文已影响0人
徒手說梦话
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
driver_path = r'D:\python\geckodriver-v0.23.0-win64\geckodriver.exe'
driver = webdriver.Firefox(executable_path=driver_path)
driver.get("https://www.baidu.com/")
# 隐式等待:调用driver.implicitly_wait。那么在获取不可用的元素之前,会先等待10秒中的时间。
# driver.implicitly_wait(10)
# 显示等待:显示等待是表明某个条件成立后才执行获取元素的操作。也可以在等待的时候指定一个最大的时间,如果超过这个时间那么就抛出一个异常。如果等待过程中出现了那么就可以获取元素操作
element = WebDriverWait(driver,10).until(
EC.presence_of_element_located((By.ID,'kw'))
)