selenium顯式等待、隱式等待和休眠


 

顯示等待:指定等待的元素

隱式等待:針對全局,無指定元素

休眠:指定等待時間,不管元素是否存在

 

顯式等待:element = WebDriverWait(瀏覽器,最大等待時間,檢測頻率)      //時間單位s,檢查頻率默認0.5s,可以省略

顯式等待需要導入WebDriverWait類:from selenium.webdriver.support.ui import WebDriverWait

一般搭配until()和until_not()使用:

  • until()調用該方法,直到返回值為ture
  • until_not():調用該方法,直到返回值為false
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC 

dr = webdriver.Firefox()
dr.get("https://baidu.com")

element = WebDriverWait(dr,5).until(
    EC.presence_of_element_located((By.ID, "kw"))
    )
print element

 

presence_of_element_locate() 判斷元素是否存在頁面中,但元素不一定可見,需要導入expected_conditions和by

如果無法定位,返回信息timeout

 

隱式等待:implicitly_wait(最大等待時間) 

from selenium import webdriver

dr = webdriver.Firefox()
dr.implicitly_wait(10) 
dr.get("https://baidu.com")

dr.find_element_by_id('kw')

 

 

休眠:sleep(休眠時間)

休眠需要導入sleep類:from time import sleep

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM