Selenium alert 弹窗处理的示例代码

 更新时间:2020年8月6日 13:20  点击:1565

selenium提供switch_to_alert方法:捕获弹出对话框(可以定位alert、confirm、prompt对话框)

switch_to_alert()    --定位弹出对话框

text()               --获取对话框文本值

accept()             --相当于点击“确认”

dismiss()            --相当于点击“取消”

send_keys()          --输入值(alert和confirm没有输入对话框,所以就不用能用了,只能使用在prompt里)

页面弹窗有 3 种类型:

  • alert(警告信息)
  • confirm(确认信息)
  • prompt(提示输入)

对于页面出现的 alert 弹窗,Selenium 提供如下方法:

序号 方法/属性 描述
1 accept() 接受
2 dismiss() 取消
3 text 获取显示的文本
4 send_keys() 输入内容

对应处理方式:

  1. alert(警告信息):WebDriver.switch_to.alert.accept()
  2. confirm(确认信息):
    1. WebDriver.switch_to.alert.accept()
    2. WebDriver.switch_to.alert.dismiss()
  3. prompt(提示输入):WebDriver.switch_to.alert.send_keys()

alert(警告信息)弹出框

alert(警告信息)弹出框,目的是提示通知信息,只需要用户看完点击确认即可。

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome() # 打开浏览器
driver.get("http://sahitest.com/demo/alertTest.htm") # 跳转至测试页面
sleep(1)
element = driver.find_element_by_name("b1") # 定位
element.click() # 点击
sleep(1)
alert = driver.switch_to.alert # 切换到弹窗
print(alert.text) # 打印弹窗显示的信息:Alert Message
alert.accept() # 接受
sleep(2)

driver.quit() # 关闭浏览器

confirm(确认信息)弹出框

confirm(确认信息)弹出框,主要是让用户来确定是否要执行某个操作。比如,淘宝,京东等,删除订单是弹出此类弹出,让用户确定是否删除,避免用户误操作。

confirm(确认信息)弹出框提供两种选择,“确认” 或者 “取消”。只需要选择其中一个即可:

  • 确认:WebDriver.switch_to.alert.accept()
  • 取消:WebDriver.switch_to.alert.dismiss()

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome() # 打开浏览器
driver.get("http://sahitest.com/demo/confirmTest.htm") # 跳转至测试页面
sleep(1)
element = driver.find_element_by_name("b1") # 定位
# 1、接受
element.click() # 点击
sleep(1)
alert = driver.switch_to.alert # 切换到弹窗
print(alert.text) # 打印弹窗显示的信息:Alert Message
alert.accept() # 接受
sleep(2)

# 2、取消
element.click() # 点击
sleep(1)
alert = driver.switch_to.alert # 切换到弹窗
print(alert.text) # 打印弹窗显示的信息:
alert.dismiss()
sleep(2)

driver.quit() # 关闭浏览器

prompt(提示输入)弹出框

prompt(提示输入)弹出框,目的是需要用户先输入信息,再做提交。Selenium 提供输入信息的方法是:

WebDriver.switch_to.alert.send_keys()

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome() # 打开浏览器
driver.get("http://sahitest.com/demo/promptTest.htm") # 跳转至测试页面
sleep(1)
element = driver.find_element_by_name("b1") # 定位
# 1、接受
element.click() # 点击
sleep(1)
alert = driver.switch_to.alert # 切换到弹窗
print(alert.text) # 打印弹窗显示的信息:Alert Message
alert.send_keys("自动化测试") # 输入内容
sleep(1)
alert.accept() # 接受
sleep(2)

driver.quit() # 关闭浏览器

注意 : 有些弹窗并非浏览器的 alert 窗口,而是 html元素,对于这种对话框,只需要通过之前介绍的选择器选中,并进行相应的操作即可。

总结

到此这篇关于Selenium alert 弹窗处理的示例代码的文章就介绍到这了,更多相关Selenium alert 弹窗内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!

[!--infotagslink--]

相关文章

  • vue中实现点击空白区域关闭弹窗的两种方法

    这篇文章主要介绍了vue中实现点击空白区域关闭弹窗的两种方法,帮助大家更好的理解和使用vue框架,感兴趣的朋友可以了解下...2020-12-30
  • selenium 反爬虫之跳过淘宝滑块验证功能的实现代码

    这篇文章主要介绍了selenium 反爬虫之跳过淘宝滑块验证功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-08-27
  • Python爬虫之Selenium实现关闭浏览器

    这篇文章主要介绍了Python爬虫之Selenium实现关闭浏览器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-04
  • JavaScript SweetAlert插件实现超酷消息警告框

    SweetAlert是一款使用纯js制作的消息警告框插件.这篇文章主要介绍了JavaScript SweetAlert插件实现超酷消息警告框的相关资料,需要的朋友可以参考下...2016-02-01
  • c# Selenium爬取数据时防止webdriver封爬虫的方法

    这篇文章主要介绍了c# Selenium爬取数据时防止webdriver封爬虫的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-15
  • vue实现内容可滚动的弹窗效果

    这篇文章主要为大家详细介绍了vue实现内容可滚动的弹窗效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-05
  • vue实现底部弹窗多选

    这篇文章主要为大家详细介绍了vue实现底部弹窗多选,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-05
  • python自动化测试selenium执行js脚本实现示例

    这篇文章主要为大家介绍了python自动化测试selenium执行js脚本的实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步...2021-11-13
  • Python Selenium操作Cookie的实例方法

    在本篇文章里小编给大家整理的是一篇关于Python Selenium操作Cookie的实例方法,有需要的朋友们可以学习参考下。...2021-02-28
  • python编程使用selenium编写测试用例

    这篇文章主要为大家介绍了在python编程学习中如何使用selenium来编写测试用例,文中给出了详细的测试用例代码,有需要的朋友可以借鉴参考下...2021-10-09
  • Flutter 底部弹窗ModelBottomSheet的使用示例

    在实际开发过程中,经常会用到底部弹窗来进行快捷操作,例如选择一个选项,选择下一步操作等等。在 Flutter 中提供了一个 showModelBottomSheet 方法用于弹出底部弹窗,本篇介绍如何使用底部弹窗。...2021-06-07
  • 如何使用Bootstrap的modal组件自定义alert,confirm和modal对话框

    本文我将为大家介绍Bootstrap中的弹出窗口组件Modal,此组件简单易用,效果大气漂亮且很实用,感兴趣的朋友一起学习吧...2016-03-03
  • 详解Python 使用 selenium 进行自动化测试或者协助日常工作

    这篇文章主要介绍了Python 使用 selenium 进行自动化测试 或者协助日常工作,我们可以使用 selenium 来帮助我们进行自动化的 Web 测试,也可以通过 selenium 操作浏览器做一些重复的,简单的事情,来减轻我们的工作...2021-09-30
  • C#使用Selenium的实现代码

    这篇文章主要介绍了C#使用Selenium的实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
  • Python selenium 自动化脚本打包成一个exe文件(推荐)

    这篇文章主要介绍了Python selenium 自动化脚本打包成一个exe文件,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-04-27
  • Python中Selenium对Cookie的操作方法

    Cookie内记录用户名和密码(加密)信息,只要请求时服务器收到Cookie,识别成功,默认为已登陆,今天通过本文给大家分享Selenium对Cookie的操作方法,感兴趣的朋友一起看看吧...2021-07-09
  • 教你怎么用python selenium实现自动化测试

    今天带大家学习怎么用python selenium实现自动化测试,文中有非常详细的介绍及代码示例,对正在学习python的小伙伴们很有帮助,需要的朋友可以参考下...2021-05-28
  • js实现弹窗效果

    这篇文章主要为大家详细介绍了js实现弹窗效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-08-09
  • Python selenium 实例之通过 selenium 查询禅道是否有任务或者BUG

    这篇文章主要介绍了Python selenium 实例之通过 selenium 查询禅道是否有任务或者BUG的相关资料,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2021-09-30
  • python3.8.1+selenium实现登录滑块验证功能

    这篇文章主要介绍了python3.8.1+selenium解决登录滑块验证的问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-05-22