alt.accept() : 等同于单击“确认”或者“OK”
alt.dismiss() : 等同于单击“取消”或者“Cancel”
alt.send_keys() : 发送文本,针对有提交需求的prompt框
alt.text() : 获取alert文本的内容
alt.authenticate(username,password) : 验证,针对需要身份验证的alert
-------------------------------------------------------------------------------------------------------------------
浏览器的弹窗不属于html页面元素,而是属于windows的控件元素,所有使用
与处理多浏览器一样的方式,即使用类switch的方式来获取弹框
<html> <head> <script type='text/javascript'> function show_alert(){ alert('第一行\n第二行'); } function show_confirm(){ var result = confirm('是否删除!'); if(result){ alert('删除成功!'); }else{ alert('不删除!'); } } function show_prompt(){ var value = prompt('输入你的名字:', '默认名字'); if(value == null){ alert('你取消了输入!'); }else if(value == ''){ alert('姓名输入为空,请重新输入!'); show_prompt(); }else{ alert('你好,'+value); } } </script> </head> <body> <input id='alert_button' type='button' value='alert' onclick='show_alert()' > <input id='confirm_button' type='button' value='confirm' onclick='show_confirm()' > <input id='prompt_button' type='button' value='prompt' onclick='show_prompt()' > </body> </html>
桌面创建此html文档:tanchuang.html
file:///C:/Users/del/Desktop/tanchuang.html
==============================================================
from selenium import webdriver from selenium.webdriver.common.alert import Alert from time import sleep
driver = webdriver.Firefox() # 指定和打开浏览器 driver.get('file:///C:/Users/del/Desktop/tanchuang.html')
driver.find_element_by_id('alert_button').click() #单击触发弹框的元素 sleep(5)
driver.switch_to.alert.accept() sleep(5)
driver.find_element_by_id('alert_button').click() alt = Alert(driver) sleep(3) alt.accept() sleep(5)
driver.close()
========================================================================
from selenium import webdriver from selenium.webdriver.common.alert import Alert from time import sleep
driver = webdriver.Firefox() # 指定和打开浏览器 driver.get('file:///C:/Users/del/Desktop/tanchuang.html')
driver.find_element_by_id('confirm_button').click() #单击触发弹框的元素
sleep(5) driver.switch_to.alert.dismiss() #点击取消按钮
sleep(8) driver.switch_to.alert.accept() #点击确定
sleep(8)
driver.find_element_by_id('confirm_button').click() #单击触发弹框的元素
sleep(5) driver.switch_to.alert.accept() #点击确定按钮 sleep(8) driver.switch_to.alert.accept() #点击确定 sleep(8)
driver.close()
===============================================================================
from selenium import webdriver from selenium.webdriver.common.alert import Alert from time import sleep
driver = webdriver.Firefox() # 指定和打开浏览器 driver.get('file:///C:/Users/del/Desktop/tanchuang.html')
driver.find_element_by_id('prompt_button').click() #单击触发弹框的元素
sleep(5) print(driver.switch_to.alert.text) #打印alter文本框里面的文字
driver.switch_to.alert.send_keys('沈巍伟')
sleep(5) driver.switch_to.alert.accept() #点击确定
sleep(5) driver.switch_to.alert.accept() #点击确定
sleep(5)
driver.close()
|