1. 程式人生 > >Selenium 警告框處理

Selenium 警告框處理

select http rom 驅動 odi 技術分享 pro 輸入文本 per

警告框分三種類型:

  • alert:顯示帶有一條指定消息和一個 OK 按鈕的警告框。
  • confirm:顯示一個帶有指定消息和 OK 及取消按鈕的對話框。
  • prompt:顯示可提示用戶進行輸入的對話框。

我們就來一一認識他們的形狀

alert:

技術分享圖片

confirm:

技術分享圖片

prompt:

技術分享圖片

警告框操作

主要操作方法有:

  • text:獲取警告框中的文字信息
  • accept():接受警告框,相當於點擊"確認"
  • dismiss():解散警告框,相當於點擊“取消”或叉掉警告框
  • send_keys():在警告框中輸入文本

我們以百度搜索設置警告框為例:

技術分享圖片

代碼:

# coding = utf-8
from selenium import
webdriver from selenium.webdriver.support.select import Select from selenium.webdriver.common.action_chains import ActionChains from time import sleep # 驅動文件路徑 driverfile_path = rD:\coship\Test_Framework\drivers\chromedriver.exe # 啟動瀏覽器 driver = webdriver.Ie(executable_path=driverfile_path) # 打開百度首頁
driver.implicitly_wait(10) driver.get(rhttps://www.baidu.com/) # 移動鼠標到設置上,再點擊搜索設置 set = driver.find_element_by_link_text("設置") ActionChains(driver).move_to_element(set).perform() driver.find_element_by_link_text("搜索設置").click() # 通過text定位 sel = driver.find_element_by_css_selector("select#nr") Select(sel).select_by_visible_text(
"每頁顯示20條") # 點擊保存設置 driver.find_element_by_link_text("保存設置").click() # 切換到警告框上 sleep(3) ale = driver.switch_to_alert() # 獲取警告框文本信息 text = ale.text print(text) # 接受警告框 ale.accept() # 叉掉警告框 # ale.dismiss() # 退出 sleep(5) driver.quit()

在這裏註意下,切換到警告框,只能用switch_to_alert(),不能用switch_to.alert()

Selenium 警告框處理