selenium 处理浏览器弹窗消息

https://www.selenium.dev/zh-cn/documentation/webdriver/js_alerts_prompts_and_confirmations/

弹窗消息处理

WebDriver提供了一个API, 用于处理JavaScript提供的三种类型(警告框,提示框和确认框)的原生弹窗消息,这些弹窗不属于页面HTML部分。

获取alert对象:alert = driver.switch_to.alert

也可以直接使用driver.switch_to.alert.accept()或driver.switch_to.alert.dismiss()

alert.text获取文本信息

类型 功能 操作 方法
alerts 警告框 显示通知消息,只能选择OK 点击OK accept()
confirm 确认框 确认信息,可以选择取消 点击OK或Cancel accept()或dismiss()
prompt 提示框 输入信息,可以选择确认或取消 用户输入后点击OK或Cancel send_keys()后accept()或dismiss()

以prompt提示框为例:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()

driver.implicitly_wait(10)

driver.get("https://www.selenium.dev/zh-cn/documentation/webdriver/js_alerts_prompts_and_confirmations/")
# Click the link to activate the alert
driver.find_element(By.LINK_TEXT, "查看样例提示框").click()

# Store the alert in a variable for reuse
alert = driver.switch_to.alert

alert.send_keys("Selenium")

# Press the OK button
alert.accept()
posted @ 2021-09-23 16:41  ikventure  阅读(1165)  评论(0)    收藏  举报