• selenium.切换iframe


    切换frame的方法

    (配合HTML代码食用)

    API 注释
    .switch_to.frame(0) 用frame的index来定位,第一个是0
    .switch_to.frame("baidu") 用id来定位
    .switch_to.frame("百度") 用name来定位
    .switch_to.frame(.find_element_by_tag_name("百度")) 用WebElement对象来定位
    .switch_to.frame(.find_element_by_xpath("//iframe[contains(@id,'baidu')]")) 用xpath定位,传入WebElement对象
    .switch_to.frame('baidu) frame一层一层的切入
    .switch_to.parent_frame() iframe退后操作,一层一层的退回
    .switch_to.default_content() 切换到主页面

    用来练习的HTML代码:

    <!DOCTYPE html>
    <html lang="en">
    <head>
            <meta charset="UTF-8">
            <title>Title</title>
    </head>
    <body>
    <iframe id= "baidu" name="百度" src="http://www.BAIDU.com" HEIGHT="300" WIDTH="1280"></iframe>
    <iframe id= "sougou" name="搜狗" src="https://www.sogou.com/" HEIGHT="300" WIDTH="1280"></iframe>
    </body>
    </html>
    

    练习步骤如下:

    1. 进入百度进行搜索
    2. 退回主页
    3. 进入搜狗进行搜索
    4. 后退一层frame
    5. 进入百度清空搜索框
    点击查看代码
    
    from selenium import webdriver
    from time import sleep
    

    url = "file:///C:/Users/BIN/Desktop/fra.html"
    browser = webdriver.Chrome()
    browser.get(url)
    browser.implicitly_wait(5)

    进入百度进行搜索

    browser.switch_to.frame("baidu")
    browser.find_element_by_xpath("//*[@id='kw']").send_keys("selenium")

    退回主页

    browser.switch_to.default_content()

    进入搜狗进行搜索

    sleep(1)
    browser.switch_to.frame(1)
    browser.find_element_by_xpath("//[@id='query']").send_keys("iframe")
    browser.find_element_by_xpath("//
    [@id='stb']").click()

    后退一层frame

    这里退回只能退到主页,比如后退两次到之前的ifarme界面则不可以实现

    sleep(1)
    browser.switch_to.parent_frame()

    browser.switch_to.parent_frame()

    sleep(1)

    进入百度清空搜索框

    browser.switch_to.frame("百度")
    browser.find_element_by_xpath("//*[@id='kw']").clear()

    sleep(1)
    browser.quit()

  • 相关阅读:
    英语 年份 读法
    香农第二定理的理解
    为什么正规子群在环里的对应概念叫理想,而不叫正规子环呢?
    vue 时间组件限制选择范围
    ubuntu 设置 shell脚本双击运行
    单元测试规范
    vue-element-admin项目配置运行
    SqlServer表字段查询
    git提交部分文件
    Asp.NetCore+Elasticsearch+Kibana日志记录
  • 原文地址:https://www.cnblogs.com/youngleesin/p/11360094.html
Copyright © 2020-2023  润新知