zoukankan      html  css  js  c++  java
  • Selenium入门10 弹出框的处理 switch_to.alert

     
    三种弹出框alert(一个按钮),confirm(两个确认,取消),prompt(两个按钮+输入框)。
    切换到弹框: switch_to_alert() 
    新版的selenium用: 
    browser.switch_to.alert.accept()
    browser.switch_to.alert.send_keys('abc')
    browser.switch_to.alert.dismiss()
    弹框的方法:
    1 text获取弹框文本
    2 accept()确认
    3 dimiss()取消
    4 send_keys() prompt弹框输入字符。其他两种会报错
     

    示例脚本如下:

    #coding=utf-8
    #弹出框操作
    
    from selenium import webdriver
    import time
    
    dr=webdriver.Firefox()
    dr.get("https://www.baidu.com")
    
    #隐藏的元素需显示出来才能操作
    setmenu = dr.find_element_by_link_text("设置")
    webdriver.ActionChains(dr).move_to_element(setmenu).perform()
    dr.find_element_by_link_text('搜索设置').click()
    time.sleep(3)
    
    #未隐藏的元素可以直接选取;注释掉的是通过父级元素找后代也可以
    #nrset = dr.find_element_by_id("nr")
    #nrset.find_element_by_css_selector("option[value='50']").click()
    dr.find_element_by_css_selector("option[value='50']").click()
    
    #弹出框确认 三种弹出框alert(一个按钮),confirm(两个按钮),prompt(两个按钮+输入框)
    dr.find_element_by_link_text("保存设置").click()
    print(dr.switch_to_alert().text)
    dr.switch_to_alert().accept() #确认
    #dr.switch_to_alert().dismiss() #取消
    #dr.switch_to_alert().send_keys("只对prompt有效") #在弹出框输入内容
    
    time.sleep(2)
    dr.quit()
  • 相关阅读:
    php函数去除html标签
    php 逐行读取txt文件
    php获取客户端与服务器端IP
    windows+php环境下安装memcache
    个人构思(android旅游广告发展方向,快乐的工作团队项目)
    一个短信和联系人的小软件
    下载器简单实例
    文件选择器
    ubuntu11.04的java环境配置
    音乐播放器
  • 原文地址:https://www.cnblogs.com/dinghanhua/p/9738829.html
Copyright © 2011-2022 走看看