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()

浙公网安备 33010602011771号