隨筆一些小小知識點。python
話很少說,開始啦。spa
python裏最多見的3中元素等待操做:code
1、強制等待 ci
sleep(3)element
這個方法使用時只需引入time模塊便可,如:import timeit
這種等待方式,時間到了就執行下面語句,如:sleep(3),3s事後執行下面代碼,這種等待方式比較死板,效率低,而且不能保證在規定的時間內元素就被加載出來了。效率
2、隱性等待import
Implicitly_wait(xxx)程序
這個等待表示在規定的時間內頁面全部元素都加載完了就執行下一步,不然一直等到時間截止,再去執行下一步。方法
這個方法相比方法一靈活,但缺點是,你須要的元素已經加載完成了,但頁面尚未加載完成,還須要頁面元素加載完成了再去執行下一步。
3、顯性等待
WebDriverWait,配合該類的until()和until_not()方法,表示程序每隔x秒去判斷一下指定的元素是否加載完,加載完了就執行下一步,不然繼續每隔x秒去判斷,指定時間截止。若是超時就會拋出異常。
用法:WebDriverWait(self.driver,15).until(EC.visibility_of_element_located((By.XPATH,'//span[@id="username"]')))