Python Selenium 处理 alert 提示信息的方法
2018-01-17 19:04
573 查看
针对alert,selenium提供了相应的类来进行处理。
先列出Alert的所有操作:
示例代码:
示例1:switch_to.alert , accept() , text
测试链接http://sahitest.com/demo/alertTest.htm
结果
示例2:Alert(driver) , dismiss()
测试链接http://sahitest.com/demo/confirmTest.htm
结果
示例3:switch_to.alert , send_keys(keysToSend)
测试链接http://sahitest.com/demo/promptTest.htm
结果
authenticate(username,password)方法没有找到合适的示例网页,不在这里写示例代码,不过用法是和send_keys一样,不过是传入两个参数而已。并且这种框很少出现,便不做更多研究。
Python selenium —— 教你分辨alert、window、div模态框,以及操作
https://huilansame.github.io/huilansame.github.io/archivers/switch-to-alert-window-div
selenium.webdriver.common.alert.Alert(driver)
先列出Alert的所有操作:
Alert(driver).accept() # 等同于点击“确认”或“OK” Alert(driver).dismiss() # 等同于点击“取消”或“Cancel” Alert(driver).authenticate(username,password) # 验证,针对需要身份验证的alert,目前还没有找到特别合适的示例页面 Alert(driver).send_keys(keysToSend) # 发送文本,对有提交需求的prompt框(上图3) Alert(driver).text # 获取alert文本内容,对有信息显示的alert框
示例代码:
示例1:switch_to.alert , accept() , text
测试链接http://sahitest.com/demo/alertTest.htm
# -*- coding: utf-8 -*- from selenium import webdriver from time import sleep driver = webdriver.Firefox() driver.maximize_window() driver.get('http://sahitest.com/demo/alertTest.htm') driver.find_element_by_name('b1').click() a1 = driver.switch_to.alert # 通过switch_to.alert切换到alert sleep(1) print a1.text # text属性输出alert的文本 a1.accept() # alert“确认” sleep(1) driver.quit()
结果
Alert Message
示例2:Alert(driver) , dismiss()
测试链接http://sahitest.com/demo/confirmTest.htm
# -*- coding: utf-8 -*- from selenium import webdriver from time import sleep from selenium.webdriver.common.alert import Alert driver = webdriver.Firefox() driver.maximize_window() driver.get('http://sahitest.com/demo/confirmTest.htm') driver.find_element_by_name('b1').click() a1 = Alert(driver) # 直接实例化Alert对象 sleep(1) print a1.text # text属性输出alert的文本 a1.dismiss() # alert“取消” sleep(1) driver.quit()
结果
Some question?
示例3:switch_to.alert , send_keys(keysToSend)
测试链接http://sahitest.com/demo/promptTest.htm
# -*- coding: utf-8 -*- from selenium import webdriver from time import sleep driver = webdriver.Firefox() driver.maximize_window() driver.get('http://sahitest.com/demo/promptTest.htm') driver.find_element_by_name('b1').click() a1 = driver.switch_to.alert # 通过switch_to.alert切换到alert sleep(1) print a1.text # text属性输出alert的文本 a1.send_keys('send some words to alert!') # 往prompt型alert中传入字符串 sleep(1) a1.accept() print driver.find_element_by_name('t1').get_attribute('value') driver.quit()
结果
Some prompt? send some words to alert!
authenticate(username,password)方法没有找到合适的示例网页,不在这里写示例代码,不过用法是和send_keys一样,不过是传入两个参数而已。并且这种框很少出现,便不做更多研究。
Python selenium —— 教你分辨alert、window、div模态框,以及操作
https://huilansame.github.io/huilansame.github.io/archivers/switch-to-alert-window-div
相关文章推荐
- arcgis license has expired 等提示信息的解决处理方法
- Asp.Net alert弹出提示信息的若干种方法
- Asp.Net alert弹出提示信息的5种方法
- Asp.Net alert弹出提示信息的几种方法总结
- Asp.Net alert弹出提示信息的5种方法
- Asp.Net alert弹出提示信息的若干种方法
- Asp.Net alert弹出提示信息的若干种方法
- selenium+webdriver+python 中警告框的处理方法
- Asp.Net alert弹出提示信息的5种方法
- Asp.Net alert弹出提示信息的5种方法
- Selenium2(Webdriver)+Python处理浏览器多标签方法二则
- Asp.Net alert弹出提示信息的若干种方法
- Asp.Net alert弹出提示信息的5种方法
- Alert 弹提示信息的5种方法
- Asp.Net alert弹出提示信息的几种方法总结
- Asp.Net alert弹出提示信息的5种方法
- yii 用户提示信息,错误提示信息的处理方法
- selenium python (十一)alert/confirm/prompt的处理(js中的弹出框)
- Asp.Net alert弹出提示信息的5种方法
- Asp.Net alert弹出提示信息的5种方法