?
方式一:強制等待
time.sleep(n) # 單位:秒
復制代碼
程式表現:強制暫停程式運行,等待n秒后繼續執行后續代碼 演示代碼:
time.sleep(3)
driver.find_element(By.ID, "kw").send_keys("華測教育")
復制代碼
方式二:隱式等待
driver.implicitly_wait(n) # 單位:秒
復制代碼
程式表現:每當driver執行動作時,暫停程式直到滿足driver執行條件;若暫停時間超出設定的時間n秒,則觸發例外 備注:隱式等待為全域配置,設定一次即可 演示代碼:
driver = webdriver.Chrome()
driver.implicitly_wait(30) # 通常在創建driver時,就設定隱式等待
driver.maximize_window()
driver.get("https://www.baidu.com/")
driver.find_element(By.ID, "kw").send_keys("華測教育")
復制代碼
方式三:顯示等待
WebDriverWait(driver, 超時時間,輪詢時間).until(等待條件)
WebDriverWait(driver, 超時時間,輪詢時間).until_not(等待條件)
復制代碼
說明:
- 在代碼中自定義等待條件,當條件發生時才繼續執行代碼
- WebDriverWait配合until()和until_not()方法,根據判斷條件進行等待,通常配合expected_conditions模塊使用
- 程式每隔一段時間(默認為0.5秒)進行條件判斷,如果會條件成立,則執行下一步,否則繼續等待,直到超過設定的最長時間 演示代碼:
WebDriverWait(driver, 10, 1).until(expected_conditions.element_to_be_clickable((By.ID, "kw")))
driver.find_element(By.ID, "kw").send_keys("華測教育")
另特意為各位同學準備了一份13G的超實用干貨自學資源,涉及的內容非常全面,涵蓋功能測驗、Linux資料庫、Python編程語言,介面測驗、UI自動化測驗、性能測驗......包括軟體學習路線圖,50多天的上課視頻、16個突擊實戰專案(滿足你對測驗經驗的需求),80余個軟體測驗用軟體,37份測驗檔案,70個軟體測驗相關問題,40篇測驗經驗級文章,上千份測驗真題分享,還有2023軟體測驗面試寶典,還有軟體測驗求職的各類精選簡歷,希望對大家有所幫助…這些都在我的軟體測驗學習交流群里:110685036
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/550455.html
標籤:其他
