Selenium警告框处理

1、处理警告框的原因:如果页面有弹出框,不处理,接下来的将不生效。

2、对话框类型:

  • alert  #警告框
  • confirm  #确认框
  • prompt    #提示框

3、处理方法:

以上三种对话框,处理方法都一样。

步骤:

(1)切换到对话框,方法:driver.switch_to.alert

(2)处理对话框

  •        alert.text    #获取文本
  •        alert.accept  #同意
  •        alert.dismiss   #取消

提示:无论以上哪个对话框,都可以使用取消、同意,因为调用的是后台的时间,根页面显示的按钮数量无关。

4、案例

from selenium import webdriver
from time import sleep

#获取浏览器对象
driver=webdriver.Firefox()
#driver.maximize_window()
driver.implicitly_wait(10)

#设置网络链接(只含有select标签的简单网页,本地)
url="http://127.0.0.1:8020/test/index.html?__hbt=1573568347662"
driver.get(url)

"""
需求:点击alert按钮,输入账号
"""
#定位alert按钮,并点击
driver.find_element_by_xpath("html/body/input[1]").click()

#切换到alert,默认返回alert对话框对象
alert=driver.switch_to.alert

"""处理对话框"""
#1、同意,确认按钮
# alert.accept()
# sleep(2)

#2、取消按钮
# alert.dismiss()
# sleep(2)

#3、获取alert文本,之后必须取消
print("警告信息:",alert.text)
alert.dismiss()

#输入账号
driver.find_element_by_xpath("//*[@id='user']").send_keys("dooooo")
sleep(3)
driver.quit()

运行效果:

发布了172 篇原创文章 · 获赞 76 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/dpl12/article/details/103039545
今日推荐