在前端中,彈框分為3種:
1、警告類彈窗-alert
2、確認類彈窗-comfirm
3、消息類彈窗-prompt
對於這三類的彈框,selenium都有相應方法對其進行確認、取消等動作處理。
一、警告類彈窗:alert
概念:顯示警告或其他信息,用於通知用戶,一般下方只有一個按鈕(確認或OK)
對於alert警告類彈框,只有一個確認操作。
主要有過程如下:
a,打開彈窗后,切換至該彈窗:swicth_to.alert(返回一個alert對象)
b,點擊彈窗的確認按鈕: accept()
示例:
from selenium import webdriver from selenium.webdriver.common.by import By from time import sleep driver = webdriver.Firefox() driver.get(r"C:\Users\574\Desktop\alert1.html") b_a = driver.find_element(By.XPATH, "//input[@id='anjing']") sleep(2) b_a.click() sleep(2) a = driver.switch_to.alert # 切換至alert彈窗
a.accept() # alert彈窗確認
a.text 獲取alert彈窗的文本
alert彈框的處理很簡單,使用switch_to.alert獲取到alert對象(該動作是切換至alert彈框)
alert對象調用accept()方法可以確認彈框
alert對象調用text屬性,可以獲取alert的文本信息。
二、確認類彈框:confirm
概念:詢問是否繼續某種操作等功能,彈窗中有【確認】和【取消】兩種按鈕。
對於comfirm確認類彈框,有確定和取消兩類操作。
和alert一樣,我們首選也要切換至comfirm彈窗:switch_to.alert,返回一個Alert對象
點擊確認按鈕:Alert對象調用accpet()方法
點擊取消按鈕:Alert對象調用dismiss()方法
三、消息類彈窗:prompt
概念:需要輸入一些信息,比如用戶密碼等,會有【確認】和【取消】按扭
和上面兩種彈框一樣,首先需要切換至彈窗:switch_to.alert,獲取Alert對象
點擊取消按鈕:Alert對象調用dismiss()方法
點擊確認按鈕:Alert對象調用accept()方法
在彈框中輸入文本:Alert對象調用send_keys(需要發送的文本)