selenium窗口切换

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

说明:本篇博客基于selenium 4.1.0

场景说明

场景:点击某个按钮后,页面是在一个新的浏览器中出现。如百度的’更多’按钮
问题:浏览器可能自动切换到了新页面,但是selenium的driver还停留在旧页面,导致无法操作新页面
解决:使用selenium的窗口切换功能,切换到新页面之后再进行操作
selenium窗口切换


切换步骤

# 步骤1:获取窗口句柄
windows = driver.window_handles       # 返回的是一个句柄列表,列表排序为当前窗口顺序

# 步骤2:切换到新窗口
driver.switch_to.window(windows[-1])  # 新窗口通常为最后一个,若为其他位置则自行处理

示例

import time
from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.get('https://www.baidu.com/')

# 点击'更多'打开新窗口
driver.find_element(By.CSS_SELECTOR, '[name="tj_briicon"]').click()
print(driver.title)    # 输出结果:百度一下,你就知道  -> 浏览器切到了新窗口,但selenium还没有

# 切换窗口
windows = driver.window_handles
driver.switch_to.window(windows[-1])
print(driver.title)    # 输出结果:百度产品大全       -> 切到新窗口成功


time.sleep(5)
driver.quit()

更多技术文章文章来源地址https://www.toymoban.com/news/detail-515582.html

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

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

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

相关文章

  • Selenium之窗口切换

    窗口切换 1、动作:导致新窗口的出现 2、获取:所有窗口的句柄。driver.window_handles  # 是个列表 3、切换:driver.switch_to.window(窗口句柄) 获取当前窗口的句柄语法:driver.current_window_handle 案例:

    2024年01月16日
    浏览(37)
  • selenium的窗口切换

    如何进入到新窗口进行提取? web.switch_to.window(web.window_handles[-1]) 关掉子窗口 web.close() 变更selenium窗口,回到原来的窗口 web.switch_to.window(web.window_handles[0]) 实例

    2024年02月11日
    浏览(48)
  • selenium多窗口、多iframe切换、alert切换

    场景: 在页面操作过程中有时候点击某个链接会弹出新的窗口,这时就需要切换到新打开的窗口上进行操作。这种情况下,需要识别多标签或窗口的情况。 操作方法: switch_to.window()方法:切换窗口。可以实现在不同的窗口之间切换。current_window_handle:获得当前窗口句柄。

    2024年02月07日
    浏览(43)
  • 【Selenium自动化测试】窗口切换

    在Web自动化测试过程中,有时单击某个链接会弹出新的窗口,这时就需要切换到新打开的窗口中进行操作。WebDriver 提供的 switch_to.window() 方法可以实现在不同的窗口之间进行切换。 主要用到的相关方法: current_window_handle:获得当前窗口句柄。 window_handles:返回所有窗口的句

    2024年02月11日
    浏览(40)
  • python自动化测试selenium(四)切换页面、切换窗口

    一、切换页面 如果定位元素失败(抛出NoSuchElementException),调查网页源代码,发现这个元素位于一个frame或iframe标记的元素下的子网页(html标记)里,那么此时需要切换Frame。 切换方法一:使用frame或iframe标记的元素的id或name属性值来作为切换条件 switch_to.frame() 将当前定位

    2024年02月12日
    浏览(43)
  • selenium+python切换浏览器窗口

    selenium在当前浏览器页面打开了新的窗口,此时如果要聚焦到新开的浏览器窗口,就需要切换到新的窗口,切换窗口的操作,具体selenium+python示例如下:

    2024年02月15日
    浏览(45)
  • selenium+python切换浏览器窗口--详细讲解

    在浏览器页面打开窗口后,有时点击按钮会打开新的页面,我们需要切换到新的窗口才能去定位操作,不然无法操作,切换窗口代码如下

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

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

    2024年02月05日
    浏览(42)
  • UI自动化测试之selenium工具(浏览器窗口的切换)

    1、在浏览网页的时候,有时点击一个链接或者按钮,会弹出一个新的窗口。这类窗口也被称之为句柄(一个浏览器窗口的唯一标识符,通过句柄实现不同浏览器窗口之间的切换),在我们手动控制浏览器的时候,产生新的句柄时浏览器会自动的帮我们跳转到最新的句柄处(鼠

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

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

    2024年04月09日
    浏览(79)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包