selenium自动化警告窗处理
先使用switch_to.alert()方法定位(使用前端工具是定位不到的),再使用text,accept,dismiss,send_keys等进行操作。
- text:返回alert,confirm,prompt中的文字信息
- accept():接受现有警告框
- dismiss():解散现有警告框
- send_key():在警告框中输入文本(如果可以输入)
以百度搜索设置弹窗为例:
from time import sleep
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
# 打开搜索设置
link = driver.find_element_by_link_text("设置").click()
driver.find_element_by_link_text("搜索设置").click()
sleep(2)
# 保存设置
driver.find_element_by_class_name("prefpanelgo").click()
# 获取警告框
alert = driver.switch_to.alert
# 获取警告提示信息
alert_text = alert.text
print(alert_text)
# 接取警告框
alert.accept()
driver.quit()
输出结果为:
已经记录下您的使用偏好