Alert弹出框处理

selenium的API提供了Alert类对alert弹出框的处理的方法,涉及到的方法有text,dismiss(),accept()和send_keys(),
在javascript中主要有alert弹出警告框,confirm弹出确认框,prompt弹出输入框。selenium操作alert需要导入Alert的发类,
具体为:from selenium.webdriver.common.alert import Alert
alert警告框的处理
alert是警告框,一般使用在设置某一个功能后,就会弹出警告框来提示用户,如百度搜索设置后,点击保存设置,
就会弹出“已经记录您的使用偏好”,下面我们就实现获取该弹出框的text,并且接受搜索的设置结果,见实现的代
码和输出:



from selenium import webdriver
from selenium.webdriver.support.select import Select
from selenium.webdriver.common.action_chains import ActionChains
import time as t
driver = webdriver.Firefox()
driver.maximize_window()
driver.get("https://www.baidu.com")
driver.implicitly_wait(30)
element = driver.find_element_by_link_text(u'设置')
ActionChains(driver).move_to_element(element).perform()
element = driver.find_element_by_link_text(u'搜索设置').click()
st = driver.find_element_by_id('nr')
Select(st).select_by_index(1)
t.sleep(3)
Select(st).select_by_visible_text(u'每页显示50条')
# 点击保存设置按钮
driver.find_element_by_id('gxszButton').find_element_by_class_name('prefpanelgo').click()
# 获取alert弹出警告框的text
print(driver.switch_to.alert.text)
# 接受警告框
driver.switch_to.alert.accept()
t.sleep(2)
driver.quit()
原文地址:https://www.cnblogs.com/confidence-pearl/p/11010426.html