zoukankan      html  css  js  c++  java
  • Python+webdriver自动化脚本初学记录之窗口切换(3)

    脚本过程:打开www.baidu.com点击hao123进入hao123页面(注意:并未出现新窗口),在hao123页面分别点击“头条新闻”,“人民网”,“新华网”,“央视网”,将会依次打开4个窗口,浏览器中一共有5个窗口,获取所有窗口句柄(使用driver.window_handles),然后使用driver.switch_to.window(handles[x])依次切换到每个窗口并打印窗口标题(页面标签),打印页面标签使用print(driver.title)。

    如果打开多个浏览器窗口,即存在多个句柄,那么窗口和句柄对应关系如下:
    例如:浏览器窗口打开顺序从左到右为:1,2,3,4,5  对应的句柄顺序为:0,4,3,2,1
    driver.switch_to.window(handles[0]):切换到第1个窗口句柄(从左到右数第1个窗口,主页面)
    driver.switch_to.window(handles[4]):切换到第2个窗口句柄(从左到右数第2个窗口)
    driver.switch_to.window(handles[3]):切换到第3个窗口句柄(从左到右数第3个窗口)
    driver.switch_to.window(handles[2]):切换到第4个窗口句柄(从左到右数第4个窗口)
    driver.switch_to.window(handles[1]):切换到第5个窗口句柄(从左到右数第5个窗口)

    说明:也可以这样理解,浏览器窗口打开顺序0,1,2,3,4   对应句柄顺序为0,4,3,2,1

    driver.switch_to.window(handles[0]):切换到第0个窗口句柄(从左到右数第0个窗口,主页面)
    driver.switch_to.window(handles[4]):切换到第1个窗口句柄(从左到右数第1个窗口)
    driver.switch_to.window(handles[3]):切换到第2个窗口句柄(从左到右数第2个窗口)
    driver.switch_to.window(handles[2]):切换到第3个窗口句柄(从左到右数第3个窗口)
    driver.switch_to.window(handles[1]):切换到第4个窗口句柄(从左到右数第4个窗口)

  • 相关阅读:
    Unix Domain Socket(基于 Linux-2.4.0已更新)
    Eclipse常用设置及部分常用快捷键个人总结(MyEclipse通用)
    使用Docker安装ElasticSearch 以及我遇到的问题
    使用Docker安装MySQL
    es 索引自动删除
    k8s部署zk集群
    k8s-基于Canal来定义网络策略
    Markdown学习
    python ---- Linux压缩某个目录但要跳过指定文件
    WEB前端 ---- 学习第二天(表格、表单、css等)
  • 原文地址:https://www.cnblogs.com/yaoze2018/p/9866141.html
Copyright © 2011-2022 走看看