zoukankan      html  css  js  c++  java
  • selenium

    表单嵌套frame/iframe

    webDriver只能在一个页面上对元素识别和定位,对于frame/iframe表单内嵌页面上的元素无法直接定位,此时就需要通过switch_to.frame()方法将当前定位的主题切换为iframe表单的内嵌页面中。
    内嵌表单格式:
     
    <html>
      <body>
        ...
        <iframe id="x-URS-iframe" ...>
          <html>
             <body>
               ...
               <input name="email" >
    

      

    内嵌表单的操作:

    from selenium import webdriver
    
    driver = webdriver.Chrome()
    driver.get("http://www.126.com")
    
    driver.switch_to.frame('x-URS-iframe')
    driver.find_element_by_name('email').clear()
    driver.find_element_by_name('email').send_keys('llf123456')
    driver.find_element_by_name('password').clear()
    driver.find_element_by_name('password').send_keys('qq12345')
    driver.find_element_by_id('dologin').click()
    driver.switch_to.default_content()
    
    driver.quit()

    switch_to.frame() 默认可以直接取表单的id 或name属性

    如果此时在进入多级表单的情况下,还可以通过switch_to.default_content()跳回最外层的页面
     
    参考资料:http://www.testclass.net/selenium_python/more-iframe/
  • 相关阅读:
    题解 CF700E Cool Slogans
    题解 LOJ2065 「SDOI2016」模式字符串
    以guest账号无密码访问设置
    共享
    计算机的C$共享在哪里
    网卡工作原理
    iperf网络测试
    Jmeter安装与使用(压测)
    压测工具使用(vegeta)
    Alertmanager 安装(k8s报警)
  • 原文地址:https://www.cnblogs.com/studyddup0212/p/9030280.html
Copyright © 2011-2022 走看看