zoukankan      html  css  js  c++  java
  • python+selenium下弹窗alter对象处理01

    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()


  • 相关阅读:
    161028、Nginx负载均衡实现tomcat集群方案简要小结
    161027、Java 中的 12 大要素及其他因素
    161026、更快速将你的页面展示给用户[前端优化篇]
    161025、java提高篇之关键字static
    161024、并发控制中的乐观锁与悲观锁
    161021、spring异步调用,完美解决!
    161020、web调试工具fiddler介绍及使用
    RuntimeError: cryptography requires setuptools 18.5 or newer, please upgrade to a newer version of setuptool
    PyCharm IDE环境下,执行unittest不生成测试报告问题解决
    (转)selenium使用Xpath+CSS+JavaScript+jQuery的定位方法(治疗selenium各种定位不到,点击不了的并发症)
  • 原文地址:https://www.cnblogs.com/xiaobaibailongma/p/12040914.html
Copyright © 2011-2022 走看看