zoukankan      html  css  js  c++  java
  • selenium常用操作之弹出框操作

    弹出框有两种:

    1.页面弹出框

    2.alert弹出框

    1.页面弹出框的操作

      页面弹出框是一个HTML页面的元素,只不过是由用户在页面的操作触发弹出的,所以执行这一类型的弹窗都是:

    1.执行触发操作之后,等待弹窗出现;

    2.再定位弹出框的元素并操作

    代码示例如下:

    from selenium import webdriver
    from  selenium.webdriver.support.wait import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.by import By
    
    
    driver=webdriver.Chrome()
    driver.get("http://www.baidu.com")
    driver.maximize_window()
    #点击登录,执行触发弹出框的操作
    driver.find_element_by_xpath('//div[@id="u"]/*[@name="tj_login"]').click()
    #等待弹出框出现
    WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.ID,"TANGRAM__PSP_10__footerULoginBtn")))
    #再定位元素
    driver.find_element_by_id("TANGRAM__PSP_10__footerULoginBtn").click()
    

    2.Alert弹出框操作

    针对浏览器的弹出框我们一般使用以下方式:

    1.使用switch_to方法切换到浏览器弹出框:driver.switch_to.alert

    2.ALert类提供了一系列操作方法:

      dismiss():否

      accept():是

      text:获取弹出框的内容

      send_keys():往弹出框输入文本

    代码示例:

    #1.等待弹出框出现
    WebDriverWait(driver,10).until(EC.alert_is_present())
    #2.从HTML页面切换到alert中
    alert=driver.switch_to.alert
    #3.获取alert文本
    text=alert.text
    #3.接受或取消弹窗
    alert.accept()
    #alert.dismiss()
    

      

  • 相关阅读:
    Eclipse将引用了第三方jar包的Java项目打包成jar文件的两种方法
    Python2.x与Python3.x的区别
    oracle锁机制
    传统解析xml的方式
    利用jdbc连接oracle数据库
    XML的解析方式(DOM、SAX、StAX)
    软件或jar包等名字里的GA意思
    windows下nginx的安装及使用
    是时候选择一款富文本编辑器了(wangEditor)
    Golang代码实现HTTPs(HTTPS证书生成和部署)
  • 原文地址:https://www.cnblogs.com/123blog/p/12482322.html
Copyright © 2011-2022 走看看