switch_to_alert() 切到弹窗
text() 获取对话窗文本值
accept() 接受弹窗
dismiss() 取消弹窗
send_keys() 输入值(alert和confirm没有输入对话框,所以就不用能用了,只能使用在prompt里)
-
alert 弹窗
弹框只允许"确认"接受提示,如图:
#!/usr/bin/python3
# coding=utf-8
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("Test.html")
driver.find_element_by_xpath("//input[@onclick='showAlert2()']").click()
sleep(2)
alert = driver.switch_to_alert() # 切换到alert弹框
print(alert.text) # 获取alert弹框text
alert.accept() # 接受alert弹框
driver.quit()
-
confirm
窗口可选择"确认"和"取消"操作,如图:
#!/usr/bin/python3
# coding=utf-8
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("Test.html")
driver.find_element_by_xpath("//input[@onclick='showAlert()']").click()
acc = driver.switch_to_alert() # 切换到弹窗
print(acc.text) # 获取弹窗text
acc.accept() # 接受弹窗报警
print(driver.find_element_by_xpath("//font[@style='color: red;']").text)
driver.get("Test.html")
driver.find_element_by_xpath("//input[@onclick='showAlert()']").click()
dis = driver.switch_to_alert() # 切换到弹窗
print(dis.text) # 获取弹窗text
dis.dismiss() # 解除弹窗报警
print(driver.find_element_by_xpath("//font[@style='color: red;']").text)
driver.quit()
-
prompt弹窗
窗口不但能进行"确认"和"取消"按钮操作,并有输入框可输入文本进行提交,如图:
#!/usr/bin/python3
# coding=utf-8
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("Test.html")
driver.find_element_by_xpath("//input[@onclick='showPro()']").click()
por = driver.switch_to_alert() # 切换到pormpt弹窗
por.send_keys('1')
por.accept() # 输入1进行提交
sleep(1)
driver.get("Test.html")
driver.find_element_by_xpath("//input[@onclick='showPro()']").click()
por = driver.switch_to_alert() # 切换到pormpt弹窗
por.dismiss() # 接触警告
sleep(1)
driver.quit()
测试HTML文件:链接:https://pan.baidu.com/s/1opaTcQ2RrzV_sthKy9T-iA 提取码:qzfk