Python丨如果是動態網站可以採用selenium的三種等待方式進行解讀

嬌兮心有之發表於2018-12-18

 

如果網站採用了動態html技術,那麼頁面上的部分元素出現時間便不能確定,這個時候就可以設定一個等待時間,強制要求在時間內出現,否則報錯,那麼我可以用等待。

說到等待,又有三種等法,且聽小編 一 一道來:

Python學習資料或者需要程式碼、視訊加Python學習群:960410445

1. 強制等待

第一種也是最簡單粗暴的一種辦法就是強制等待 time.sleep(10) 。

 

這種等待方式時間到了就執行下個語句,但比較死板,不能保證在等待的時間內元素真正被載入了出來。

2. 隱性等待

第二種辦法叫隱性等待,driver.implicitly_wait(20),這個等待表示在規定的時間內頁面的所有元素都載入完了就執行下一步,否則一直等到時間截止,然後再繼續下一步。

 

3. 顯性等待

第三種辦法就是顯性等待WebDriverWait,配合該類的until()和until_not()方法,就能夠根據判斷條件而進行靈活地等待了。

 

表示程式每隔x秒去判斷一下指定的元素是否載入完,載入完了就執行下一步,否則繼續每隔x秒去判斷,指定時間截止。如果超時就會丟擲異常。

相關文章