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


  • 相关阅读:
    服务器端口
    Format(const wchar_t *,...)”: 不能将参数 1 从“const char [3]”转换为“const wchar_t *”.
    图片格式
    CreateEx
    电力谐波
    [OGeek2019]babyrop
    Simple Inject
    [GXYCTF2019]BabySQli
    [CISCN2019 华北赛区 Day2 Web1]Hack World
    极客大挑战2019
  • 原文地址:https://www.cnblogs.com/xiaobaibailongma/p/12040914.html
Copyright © 2011-2022 走看看