zoukankan      html  css  js  c++  java
  • selenium自动化之多窗口切换

    在用selenium做自动化时,经常想要在多个窗口之间切换,首先要知道每一个窗口的唯一标识符(也就是“句柄”),然后通过句柄来进行不同窗口之间的切换。

    • 打开一个新窗口

    1 from selenium import webdriver
    2 from time import sleep
    3 
    4 driver = webdriver.Chrome()
    5 driver.get("https://www.baidu.com/")
    6 sleep(2)
    7 driver.execute_script('window.open("http://fanyi.youdao.com/")')  #打开一个新窗口
    8 sleep(2)
    9 driver.quit()  #关闭相关浏览器
    • 获取句柄并进行窗口切换

     1 from selenium import webdriver
     2 from time import sleep
     3 
     4 driver = webdriver.Chrome()
     5 driver.get("https://www.baidu.com/")
     6 index1 = driver.current_window_handle   #当前窗口句柄,即baidu页面的句柄
     7 sleep(2)
     8 driver.execute_script('window.open("http://fanyi.youdao.com/")')
     9 sleep(2)
    10 driver.switch_to.window(index1)  # 切换回第一个窗口
    11 print('第一个窗口:', driver.title)
    12 sleep(2)
    13 driver.window_handles   #所有句柄
    14 driver.switch_to.window(driver.window_handles[1])  # 切换回第二个窗口
    15 print('第二个窗口:', driver.title)
    16 sleep(2)
    17 driver.quit()

    参考链接:https://www.jianshu.com/p/60cf21e0ae55

  • 相关阅读:
    深入js——this
    深入js——作用域链
    深入js——变量对象
    深入js——执行上下文栈
    vue为什么不能检测数组的变化
    常用的文件下载方式
    vue中修改第三方组件的样式不生效
    Neo4j 学习笔记2
    Neo4j 学习笔记1
    idea git 命令
  • 原文地址:https://www.cnblogs.com/sunshine-blog/p/12886533.html
Copyright © 2011-2022 走看看