博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 消息框的处理
阅读量:4939 次
发布时间:2019-06-11

本文共 3281 字,大约阅读时间需要 10 分钟。

在实际系统中,在完成某些操作时会弹出对话框来提示,主要分为"警告消息框","确认消息框","提示消息对话"三种类型的对话框。

1.警告消息框(alert)

  警告消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说用户必须先关闭该消息框然后才能继续进行操作。

2.确认消息框(confirm)

  确认消息框向用户提示一个"是与否"问题,用户可以根据选择"确定"按钮和"取消"按钮。

3.提示消息对话(prompt)

  提示消息框提供了一个文本字段,用户可以在此字段输入一个答案来响应您的提示。该消息框有一个"确定"按钮和一个"取消"按钮。选择"确认"会响应对应的提示信息,选择"取消"会关闭对话框。

selenium 提供switch_to_alert()方法定位到 alert/confirm/prompt对话框。使用 text/accept/dismiss/send_keys 进行操作,这里注意的是send_keys只能对prompt进行操作。

  • switch_to_alert()   #定位弹出对话
  • text()                   #获取对话框文本值
  • accept()                   #相当于点击"确认"
  • dismiss()                  #相当于点击"取消"
  • send_keys()              # 输入值,这个alert和confirm没有输入对话框,所以这里就不能用了,所以这里只能使用在prompt这里。

为了便于显示switch_to_alter()方法,下面我这边写了一个小小的页面,这里我把三种对话框全部包括下来,然后来进行模拟实际过程中遇到的对话框。

            

hello girl

下面的三个例子,主要来演示如何处理上面说的三种对话框。 

 1.处理alert对话框。

#-*-coding:utf-8 -*-import timefrom selenium import webdriverdriver = webdriver.Chrome()driver.maximize_window()driver.get('file:///C:/Users/hunk/Desktop/alter.html')'''获取alert对话框的按钮,点击按钮,弹出alert对话框'''driver.find_element_by_xpath('/html/body/div/input[2]').click()'''获取alert对话框'''alert = driver.switch_to_alert()'''添加等待时间'''time.sleep(2)'''获取警告对话框的内容'''print (alert.text)  #打印警告对话框内容alert.accept()   #alert对话框属于警告对话框,我们这里只能接受弹窗'''添加等待时间'''time.sleep(2)driver.quit()

 2.处理confirm对话框

#-*-coding:utf-8 -*-import timefrom selenium import webdriverdriver = webdriver.Chrome()driver.maximize_window()driver.get('file:///C:/Users/hunk/Desktop/alter.html')'''获取confirm对话框的按钮,点击按钮,弹出confirm对话框'''driver.find_element_by_xpath('/html/body/div/input[3]').click()'''获取confirm对话框'''dialog_box = driver.switch_to_alert()'''添加等待时间'''time.sleep(2)'''获取对话框的内容'''print (dialog_box.text)  #打印警告对话框内容'''点击【确认】显示"您为何如此自信?"'''dialog_box.accept()   #接受弹窗print (driver.find_element_by_xpath('//*[@id="textSpan"]/font').text)time.sleep(2)'''再次获取confirm对话框的按钮,点击按钮,弹出confirm对话框'''driver.find_element_by_xpath('/html/body/div/input[3]').click()'''再次获取confirm对话框'''dialog_box = driver.switch_to_alert()'''点击【取消】显示"您为何如此谦虚?"'''time.sleep(2)dialog_box.dismiss()  #关闭获取取消对话框print (driver.find_element_by_xpath('//*[@id="textSpan"]/font').text)driver.quit()

3.处理prompt对话框

#-*-coding:utf-8 -*-import timefrom selenium import webdriverdriver = webdriver.Chrome()driver.maximize_window()'''获取对话框输入2,并且点击【确认】,文本框内提示
<左哥是真笨啊>
,点击【取消】文本框内提示
<您没有按要求输入,请重新输入>
'''driver.get('file:///C:/Users/hunk/Desktop/alter.html')'''获取prompt对话框的按钮,点击按钮,弹出confirm对话框'''driver.find_element_by_xpath('/html/body/div/input[1]').click()'''获取prompt对话框'''dialog_box = driver.switch_to_alert()'''添加等待时间'''time.sleep(2)'''获取对话框的内容'''print (dialog_box.text) #打印警告对话框内容dialog_box.send_keys("2") #弹出框内输入2dialog_box.accept() #接受print (driver.find_element_by_xpath('//*[@id="textSpan"]/font').text) #获取关闭弹窗结果 #获取确认弹窗结果'''这里等待几秒在测试取消'''time.sleep(2)#************************点击【取消】,并且获取显示结果**********************driver.find_element_by_xpath('/html/body/div/input[1]').click()'''获取prompt对话框'''dialog_box = driver.switch_to_alert()'''添加等待时间'''time.sleep(2)dialog_box.dismiss() #关闭对话框print (driver.find_element_by_xpath('//*[@id="textSpan"]/font').text) #获取关闭弹窗结果time.sleep(2)driver.quit()

转载于:https://www.cnblogs.com/thb-blog/p/7606845.html

你可能感兴趣的文章
第一个只出现一次的字符--java实现
查看>>
微信开发官方Demo(C#版本) 坑死人
查看>>
小程序循环东西修改后显示
查看>>
js表单提交的三种方式
查看>>
Toolbar
查看>>
非常不错的新闻客户端应用安卓源码
查看>>
不懂的名词
查看>>
Python 五角星
查看>>
react native 打包Ignoring return value of function declared with warn_unused_result attribute
查看>>
千万别点进来,点进来你就哭了(最短路,dijkstra)
查看>>
mysql自定义函数
查看>>
[科普]DNS相关的攻击介绍
查看>>
UVA10617
查看>>
使用putty配套工具pscp实现windows与Linux平台间文件传送[Linux]
查看>>
PHP安全配置
查看>>
XCode中如何使用事务
查看>>
poj 3207 Ikki's Story IV - Panda's Trick 2-sat
查看>>
keytool工具生成自签名证书并且通过浏览器导入证书
查看>>
[整理]C#.Net的常见面试试题附答案(ZT)
查看>>
【转】verilog语法学习心得
查看>>