selenium 三大等待方式

2022-06-27 19:03:13 字數 862 閱讀 8681

一、強制等待

time.sleep(),硬性等待,可以放在任意地方,等待時間為設定的時長,本質是暫停**執行,每需要用到一次,就要設定一次。

二、隱性等待

implicitly_wait(),啟動瀏覽器後只需要設定一次,只能用於等待元素出現,等待的最長時間為設定的時長,一旦等待的元素出現,即停止等待。

三、顯性等待

webdriverwait(),每需要用到一次,就要啟動一次。不僅用於元素等待,而且還用於其他的等待,等待的最長時長為設定的時長,一旦等待的結果出現,即停止等待。

常用的等待方式如下:

1、等待某個元素載入 wait.until(expected_conditions.presence_of_element_located(locator))

2、等待某個元素可見  wait.until(expected_conditions.visibility_of_element_located(locator))

3、等待元素可以被點選  wait.until(expected_conditons.element_to_be_clickable(locator))

Selenium 三大延時等待

在做自動化時,有時候定位或操作元素的條件還不滿足,如頁面還沒有載入完 元素沒有顯示出來 不可點選等 會導致元素找不到,這個時候需要延時等待方可進行元素的操作 selenium的三大等待 硬性等待也稱為強制等待 執行緒休眠,採用方式如下 thread.sleep 3000 表示執行緒等待3秒 硬性等待...

selenium三種等待方式

很多時候,我們進行元素定位時無法按預期成功定位到元素,但是我們的 又確保準確無誤,那是什麼原因呢?其實,原因很簡單,大致分為2種 1,所定位的元素在frame iframe中 2,未設定合理的等待 為什麼未設定合理等待的時候,很有可能無法正確定位元素呢?我們知道,的執行速度很快很快,但瀏覽器的渲染速...

Selenium 三種等待方式詳解

我們在做web自動化時,一般要等待頁面元素載入完成後,才能執行操作,否則會報找不到元素的錯誤,這樣就要求我們在有些場景下加等待時間。我們平常用到的有三種等待方式 利用time模組的sleep方法來實現,最簡單粗暴的等待方法 coding utf 8 from time import sleep fr...