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

      

  • 相关阅读:
    用UILocalNotification实现一个闹钟(Swift)
    Swift
    iOS判断一些权限是否被禁止
    ofbiz学习笔记
    POJ1062 昂贵的聘礼 【DFS】
    echarts 应用数个样例
    java 中缀转后缀(逆波兰)
    开放是否能让苹果成为智能家居的标准制定者?
    2015阿里校招前端在线题目
    hql中不能写count(1)能够写count(a.id)
  • 原文地址:https://www.cnblogs.com/123blog/p/12482322.html
Copyright © 2011-2022 走看看