Python中三种等待方式:
- 强制等待 time.sleep(等待的秒数)
- 显式等待 imlicitly_wait(10)
- 隐式等待 :用隐式等待前需先引入三个包
from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By
写法一:
from selenium import webdriver from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By ch=webdriver.Chrome() url="http://www.baidu.com" ch.get(url) ch.maximize_window()#最大化浏览器窗口 # EC.类名(定位方法,定位表达式) 定义X变量来接收定位的目标元素 x = EC.visibility_of_element_located((By.ID,"kw")) # EC是以上导入expected_conditions包的别名 WebDriverWait(ch,20).until(x)#找到我们想要的目标元素出现; WebDriverWait(浏览器操作对象,设置最长等待多长时间,)
写法二:
# 这种方法,简单
WebDriverWait(ch,20).until(EC.visibility_of_all_elements_located((By.ID,"kw")))
后期 调整修改中,有描述不对的地方,欢迎帮助指正,共同学习成长