iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python+Selenium实现浏览器标签页的切换
  • 924
分享到

Python+Selenium实现浏览器标签页的切换

2024-04-02 19:04:59 924人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录selenium 实现浏览器标签页句柄的切换浏览器标签页本地文件准备利用 selenium 实现浏览器页面的切换在实际工作中,我们经常会遇到页面切换的情况。就比如当点击了某个功能

在实际工作中,我们经常会遇到页面切换的情况。就比如当点击了某个功能的按钮后,浏览器出现了新的标签页,需要在这些标签页之间进行切换。要如何通过 selenium 来实现这样的场景呢?这就是我们今天要学习的内容。

selenium 实现浏览器标签页句柄的切换

浏览器标签页本地文件准备

这一段纯粹是因为内容太少,拿来凑字数的...

同样的,这里所使用的是我们本地的 multi.html 文件,点击该文件的 “reGISter”,会跳转至 “www.baidu.com” 。

“multi.html” 文件的前端代码如下:

<html>
    <head>
      <meta Http-equiv="content-type" content="text/html;charset=utf-8" />
      <title>FORM</title>
      <script type="text/javascript" async="" src="Jquery.min.js"></script>
      <link href="bootstrap-combined.min.CSS" rel="external nofollow"  rel="stylesheet" />
      <script src="bootstrap.min.js"></script>
    </head>
    <body>
      <h3>simple login form</h3>
      <form class="form-horizontal">
        <div class="control-group">
          <label class="control-label" for="inputEmail">Email</label>
          <div class="controls">
            <input type="text" id="inputEmail" placeholder="Email" name="email">
          </div>
        </div>
        <div class="control-group">
          <label class="control-label" for="inputPassWord">Password</label>
          <div class="controls">
            <input type="password" id="inputPassword" placeholder="Password" name="password">
          </div>
        </div>
        <div class="control-group">
          <div class="controls">
            <label class="checkbox">
              <input type="checkbox"> Remember me
            </label>
            <button type="submit" class="btn">Sign in</button>
            <a href="https://www.baidu.com" rel="external nofollow"  target="_blank">register</a>
          </div>
        </div>
      </form>
    </body>
</html>

利用 selenium 实现浏览器页面的切换

获取浏览器标签页句柄方法如下:

current_window_handle 获取当前标签页的句柄

window_handles 获取所有标签页的句柄

代码示例如下:

# coding:utf-8

from time import sleep
from selenium import WEBdriver

driver = webdriver.Chrome()     # 启动 Chrome浏览器的 driver
driver.maximize_window()        # Chrome 浏览器最大化
driver.get('file:///Users/workspace/WEB_TEST_HTML/multi.html')   # 打开本地的 "multi.html" 文件
sleep(1)
first_window = driver.current_window_handle     # 通过 current_window_handle 属性获取当前标签页的句柄
driver.find_element_by_link_text('register').click()     # 通过 link_text 方法定位到 "register" 元素,执行点击操作(跳转百度)
sleep(2)
all_windows = driver.window_handles     # 通过 window_handles 属性获取当前所有标签页的句柄
for handle in all_windows:              # for 循环判断当前句柄是否是 first_window 句柄,如果不是则跳转至该句柄(该句柄为百度页面的句柄)
    if handle != first_window:
        driver.switch_to.window(handle)
        print("已跳转至 '百度' 标签页的句柄")
sleep(1)
driver.find_element_by_id('kw').send_keys('渴望力量的哈士奇')    # 在百度句柄页面的搜索框输入要百度的内容 "渴望力量的哈士奇"
sleep(1)
driver.find_element_by_id('su').click()     # 点击 "百度一下" 按钮
sleep(2)
driver.switch_to.window(first_window)       # 跳转至 "multi.html" 页面的句柄

email_element = driver.find_element_by_xpath('//*[@id="inputEmail"]')    # 通过 xpath 定位 Email 输入框。
email_element.send_keys('username')     # Email 输入框输入 "username"
sleep(1)
email_element.clear()                   # 清除 Email 输入框内容
sleep(1)
email_element.send_keys('admin')        # Email 输入框输入 "admin"
driver.find_element_by_xpath('//*[@id="inputPassword"]').send_keys('123456')    # Password 输入框输入 "123456"
sleep(1)
driver.find_element_by_xpath('/html/body/form/div[3]/div/button').click()
sleep(1)

driver.quit()

运行结果如下:

到此这篇关于python+Selenium实现浏览器标签页的切换的文章就介绍到这了,更多相关Python Selenium浏览器标签页切换内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python+Selenium实现浏览器标签页的切换

本文链接: https://www.lsjlt.com/news/118600.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python+Selenium实现浏览器标签页的切换
    目录selenium 实现浏览器标签页句柄的切换浏览器标签页本地文件准备利用 selenium 实现浏览器页面的切换在实际工作中,我们经常会遇到页面切换的情况。就比如当点击了某个功能...
    99+
    2024-04-02
  • JavaScript实现标签页切换效果
    本文实例为大家分享了JavaScript实现标签页切换效果的具体代码,供大家参考,具体内容如下 构建主体界面 HTML代码 <h1>实现标签页的切换效果</h...
    99+
    2024-04-02
  • JS如何实现标签页切换效果
    这篇文章给大家分享的是有关JS如何实现标签页切换效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下<html> <head> <meta...
    99+
    2024-04-02
  • Python+Selenium实现浏览器的控制操作
    目录浏览器参数设置浏览器窗口大小设置获取浏览器内容控制浏览器前进/后退控制浏览器滚动条浏览器多窗口切换浏览器参数设置 设置浏览器参数实在定义driver的时候设置chrome_opt...
    99+
    2024-04-02
  • Python+selenium实现浏览器基本操作详解
    目录关闭 driver 启动的浏览器浏览器最大化与设置浏览器窗口大小浏览器最大化设置浏览器窗口大小浏览器的前进、后退与刷新页面关闭 driver 启动的浏览器 上一章节文末,我们介绍...
    99+
    2024-04-02
  • 浏览器切换到其他标签页或最小化js定时器是否准时测试
    目录前言浏览器可见和不可见状态setIntervalsetTimeoutrequestAnimationFrame总结如何解决前言 这是我最近开发碰到的一个问题,本文是我测试出来的实...
    99+
    2024-04-02
  • 浏览器tab页签上的title图标怎么设置
    今天小编给大家分享一下浏览器tab页签上的title图标怎么设置的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。浏览器tab页...
    99+
    2023-06-26
  • Bootstrap怎么实现标签页内容切换显示效果
    这篇文章主要介绍了Bootstrap怎么实现标签页内容切换显示效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体如下:<!DOCT...
    99+
    2024-04-02
  • AngularJS如何实现标签页tab选项卡切换功能
    这篇文章将为大家详细讲解有关AngularJS如何实现标签页tab选项卡切换功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体如下:选项卡一:JavaScript+h...
    99+
    2024-04-02
  • Win10 10120预览版Edge浏览器新增新标签页特性
          随着Windows 10发布日期的日益临近,微软也加快了全新浏览器Edge的开发进度,在最新的Windows 10 build 10120中,开发人员对浏览器...
    99+
    2023-06-15
    Win10 10120 Edge 浏览器 预览 标签
  • 如何使用BootStrap实现标签切换
    这篇文章将为大家详细讲解有关如何使用BootStrap实现标签切换,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。原理解析 1.定义一无序列表。取id值为myTab。 2....
    99+
    2024-04-02
  • python网络爬虫selenium打开多窗口与切换页面的实现
    关于python网络爬虫selenium打开多窗口与切换页面的方法代码测试与解析。 首先打开百度 from selenium import webdriver import time...
    99+
    2024-04-02
  • CSS怎么实现Tab切换标签效果
    这篇文章主要讲解了“CSS怎么实现Tab切换标签效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS怎么实现Tab切换标签效果”吧!本文实例讲述了纯CS...
    99+
    2024-04-02
  • Selenium控制已打开的浏览器-python-edge
    Selenium控制已打开的浏览器-python-edge 前言通过命令启动浏览器Selenium打开浏览器后话推荐阅读 前言 诡异的验证码和微信扫码登录着实让爬虫难堪,那是否可以在已经打...
    99+
    2023-09-09
    python selenium edge 测试工具 开发语言
  • Win10系统中怎么设置Edge浏览器标签页预览功能?
    Win10内置的Edge浏览器的标签页预览功能算是比较实用,不过一般用户并没有对这项功能进行设置的接口。但是想想就知道,Windows有个强大的工具叫做“注册表”,可以说想设什么就设什么。对于这项...
    99+
    2023-05-21
    Win10 Edge 标签
  • windows谷歌浏览器标签页不显示如何解决
    本文小编为大家详细介绍“windows谷歌浏览器标签页不显示如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“windows谷歌浏览器标签页不显示如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。谷歌浏...
    99+
    2023-07-01
  • win7系统实现3D窗口浏览和切换的方法
      看久了任务栏千篇一律的窗口画面   1、打开计算机,再打开系统盘(一般是C盘)。   2、在c盘内找到Windows—>system32两个文件夹,依次序打开。   3、由于这里的文件夹较多,...
    99+
    2023-06-09
    win7 3D窗口 浏览 系统 方法
  • 支持legend标签的浏览器有哪些
    本文小编为大家详细介绍“支持legend标签的浏览器有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“支持legend标签的浏览器有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新...
    99+
    2024-04-02
  • python selenium webdriver怎么实现多线程启动多个浏览器
    这篇文章主要讲解了“python selenium webdriver怎么实现多线程启动多个浏览器”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python selenium webdriv...
    99+
    2023-06-05
  • noscript 标签的奥秘:让你的网页适应不同的浏览器
    理解 noscript 标签 noscript 标签是一个容器,用来包含在 JavaScript 禁用时显示的备用内容。它通常与 script 标签一起使用,如下所示: <script> // JavaScript 代码 ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作