zoukankan      html  css  js  c++  java
  • Selenium(十二)嵌套frame定位

    第一种:iframe有id、name属性

    网页上有3个frame:header、menu、main,分别代码顶部、左侧、右侧(其中menu、main在另外一个frameset中)

    如何定位到“header”框架:

    driver.switch_to_frame("header")

    如何定位到“main”框架:

    driver.switch_to_default_content()
    
    driver.switch_to_frame(driver.find_element_by_name("main"))

    第二种:iframe无id或name属性

    如何定位到“iframe”框架:

    frame1=driver.find_element_by_tag_name("iframe")
    driver.switch_to_frame(frame1)

    第三种:页面有多个iframe属性,且无name、id动态变化

    #coding: utf-8
    from selenium import webdriver
    from time import sleep
    from selenium.webdriver.common.by import By
    
    driver = webdriver.Firefox()
    driver.get('http://you.163.com/')
    
    driver.find_element_by_xpath('//*[@id="j-yx-cp-m-siteNav"]/div/div[2]/div[1]/div[1]/div/div').click()
    sleep(3)
    
    driver.find_element_by_xpath('//*[@id="j-yx-loginFormWrap"]/div/div[1]/div[2]/div[3]').click()
    
    driver.switch_to.frame(2)    #从0开始,第三个iframe
    driver.find_element_by_name("email").send_keys('ok.qq.com')
    driver.find_element_by_name("password").send_keys('ok1')
    driver.find_element_by_id('dologin').click()
  • 相关阅读:
    排序
    阿里实习 电面,面试
    外部排序
    error: LNK 2019 无法解析的外部符号
    c++ 变量定义 的初始化规则
    Spring 让 LOB 数据操作变得简单易行
    深入浅出JMS(四)--Spring和ActiveMQ整合的完整实例
    Spring jdbc call oralce procedure or function
    JSON 简单封装
    extjs3 用户管理 页面
  • 原文地址:https://www.cnblogs.com/dydxw/p/10551160.html
Copyright © 2011-2022 走看看