使用 Python 和 Selenium 檢查是否存在任何警告。
我們可以使用 Selenium 瀏覽器驅動程式檢查是否存在警告。在網頁上設計警告是為了通知使用者或針對警告執行某些操作。它在 Javascript 的幫助下進行設計。
警告可以有三種類型 - 提示、確認對話方塊或警告。Selenium 有多重 API 可以使用一個 Alert 介面來處理警告。要檢查警告的存在性我們將使用同步中的 顯式等待 概念。
我們知道,顯式等待是建立在特定元素的預期條件基礎之上。對於警告,我們要驗證在特定等待時間後是否存在 alert_is_present。如果存在,就接受它。整個驗證應在 try except 塊內。
我們來看看上面的警告是否存在於頁面中。WebDriverWait 類與 ExpectedCondition 一起用於顯式等待條件。
示例
程式碼實現。
from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.common.exceptions import TimeoutException driver = webdriver.Chrome (executable_path="C:\chromedriver.exe") # maximize with maximize_window() driver.maximize_window() driver.get("https://tutorialspoint.tw/selenium/selenium_automation_practice.htm") # identify element and click() l=driver.find_element_by_name("submit") l.click() // alert_is_present() expected condition wait for 5 seconds try: WebDriverWait(driver, 5).until (EC.alert_is_present()) // switch_to.alert for switching to alert and accept alert = driver.switch_to.alert alert.accept() print("alert Exists in page") except TimeoutException: print("alert does not Exist in page") driver.close()
輸出
廣告