Selenium 切换窗口

这篇具有很好参考价值的文章主要介绍了Selenium 切换窗口。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

场景需求

当前窗口点开一个链接后,打开了一个新的标签窗口,我需要在新标签中进行后面的操作
下面以 Python 代码演示

具体实现

首先,切换窗口可以使用WebDriver类的switch_to.window()方法来完成
然后,获取当前窗口的句柄(handle),再后获取所有窗口的句柄,切换到新窗口的句柄上
举个例子:

main_handle = driver.current_window_handle
element.click()  # 点击链接
all_handles = driver.window_handles
for handle in all_handles:
    if handle != main_handle:
        driver.switch_to.window(handle)

这段代码会记录当前窗口的句柄,点击链接后,获取所有窗口的句柄,遍历所有窗口的句柄,如果找到的句柄不是当前窗口的句柄,则切换到这个窗口
这样就可以在新标签窗口中进行操作了

需要注意的是,在切换窗口时需要等待新窗口加载完成,可以使用WebDriverWait类的until()方法来等待新窗口出现
例如:

wait = WebDriverWait(driver, 10)
wait.until(EC.new_window_is_opened(main_handle))

这行代码会等待10秒,直到新窗口打开
至此,目的实现文章来源地址https://www.toymoban.com/news/detail-723729.html

到了这里,关于Selenium 切换窗口的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python自动化测试工具selenium

    selenium 是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等。官网地址为:Selenium。相对于另外一款web自动化测试工具QTP来说有如下优点: 免费开源轻量级,不同语言只需要一个体积很小的依赖包 支持多种系统,包括Windows,Mac,Linux 支持多种浏

    2024年02月08日
    浏览(81)
  • 『python爬虫』23. selenium之窗口切换与iframe(保姆级图文)

    欢迎关注 『python爬虫』 专栏,持续更新中 欢迎关注 『python爬虫』 专栏,持续更新中 窗口句柄的定义:WebDriver对象有window_handles 属性,是列表对象, 里面包括了当前浏览器里面 所有的窗口句柄,即每个窗口对应唯一ID。通过窗口句柄判断窗口一一对应。 web = Chrome() #新建驱

    2024年02月05日
    浏览(39)
  • Python自动化测试工具selenium使用指南

    概述 selenium 是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等。官网地址为:相对于另外一款web自动化测试工具QTP来说有如下优点: 免费开源轻量级,不同语言只需要一个体积很小的依赖包 支持多种系统,包括Windows,Mac,Linux 支持多种浏览器

    2024年02月04日
    浏览(63)
  • python网络爬虫selenium打开多窗口与切换页面,附详细答案解析

    time.sleep(2) win2 = driver.window_handles[1] driver.switch_to.window(win2) print(driver.current_url) 关于句柄在列表中的顺序, 建议一般最好只额外打开一个网页,不建议打开更多的网页进行切换。当打开的网页数量超过两个时,句柄列表中的元素分别代表哪个网页,其顺序是不太好确定的。以下

    2024年04月09日
    浏览(75)
  • 测试员进阶必看系列 “ python自动化测试工具selenium使用指南 ”

    概述 python+selenium环境安装 使用selenium启动浏览器 selenium页面加载等待和检测 使用time.sleep()等待 使用implicitly_wait设置最长等待时间 使用WebDriverWait设置等待条件 检测document是否加载完成 selenium元素定位和读取 查找元素 dom元素交互 查找元素失败处理 selenium交互控制 ActionChains动

    2024年02月05日
    浏览(107)
  • 如何使用Python自动化测试工具Selenium进行网页自动化?

    Selenium 是一个流行的Web自动化测试框架, 它支持多种编程语言和浏览器,并提供了丰富的API和工具来模拟用户在浏览器中的行为 。 Selenium可以通过代码驱动浏览器自动化测试流程,包括页面导航、元素查找、数据填充、点击操作等。 与PyAutoGUI和AutoIt相比, Selenium更适合于处

    2023年04月09日
    浏览(120)
  • Python Selenium4.3.0(新语法) web自动化测试工具

    1 介绍 Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。 支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等 这个工具的主要功能包括:测试与浏览器的兼容性——测试应用程序看是否能够

    2024年01月24日
    浏览(49)
  • python自动化测试工具selenium使用指南 ,绝对能帮到你

    目录 概述 python+selenium环境安装 使用selenium启动浏览器 selenium页面加载等待和检测 使用time.sleep()等待 使用implicitly_wait设置最长等待时间 使用WebDriverWait设置等待条件 检测document是否加载完成 selenium元素定位和读取 查找元素 dom元素交互 查找元素失败处理 selenium交互控制 Actio

    2024年02月08日
    浏览(50)
  • ubuntu 18.04 配置自动化测试工具 appium + selenium+python3

    sudo add-apt-repository ppa:danielrichter2007/grub-customizer sudo apt-get update sudo apt-get install grub-customizer sudo apt-get install openjdk-8-jdk ================================================================================ 【已经安装Android studio 可以跳过】 下载SDK =============================== 配置环境变量 【配置环境变量

    2024年02月03日
    浏览(96)
  • 【Selenium】切换/窗口切换

    其中,frame_reference可以是: frame元素的Id属性 frame元素的name属性 frame对应的WebElement对象 打开网址:https://cdn2.byhy.net/files/selenium/sample2.html,输出下图中所有的animal对象,然后点击“外部按钮“。 参数handle:操作窗口的句柄 WebDriver对象有 window_handles 属性,这是一个列表对象,

    2024年02月05日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包