python selenium 对浏览器标签页进行关闭和切换的方法
作者:爱唱歌de小青蛙 发布时间:2023-06-18 19:42:26
标签:python,selenium,标签,关闭,切换
1.关闭浏览器全部标签页
driver.quit()
2.关闭当前标签页(从标签页A打开新的标签页B,关闭标签页A)
driver.close()
3.关闭当前标签页(从标签页A打开新的标签页B,关闭标签页B)
可利用浏览器自带的快捷方式对打开的标签进行关闭
Firefox自身的快捷键分别为:
Ctrl+t 新建tab
Ctrl+w 关闭tab
Ctrl+Tab /Ctrl+Page_Up 定位当前标签页的下一个标签页
Ctrl+Shift+Tab/Ctrl+Page_Down 定位当前标签页的前一个标签页
Ctrl+[数字键1-8] 定位所有标签页中最前的第[1-8]个
Ctrl+数字键9 定位最后一个标签页
注:如果是在一些Linux发行版系统中,比如Ubuntu,需要将Ctrl键换成Alt键
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
#新建标签页
ActionChains(browser).key_down(Keys.CONTROL).send_keys("t").key_up(Keys.CONTROL).perform()
# 关闭标签页
ActionChains(browser).key_down(Keys.CONTROL).send_keys("w").key_up(Keys.CONTROL).perform()
4.标签页切换
from selenium import webdriver
browser=webdriver.Firefox()
browser.get('xxxxx')
# 获取当前窗口句柄(窗口A)
handle = browser.current_window_handle
# 打开一个新的窗口
browser.find_element_by_id('xx').click()
# 获取当前所有窗口句柄(窗口A、B)
handles = browser.window_handles
# 对窗口进行遍历
for newhandle in handles:
# 筛选新打开的窗口B
if newhandle!=handle:
# 切换到新打开的窗口B
browser.switch_to_window(newhandle)
# 在新打开的窗口B中操作
browser.find_element_by_id('xx').click()
# 关闭当前窗口B
browser.close()
#切换回窗口A
browser.switch_to_window(handles[0])
来源:https://blog.csdn.net/xm_csdn/article/details/53395900


猜你喜欢
- 1 九九乘法表for i in range(9):#从0循环到8 i += 1#等价于 i = i+1 for j
- 比如要访问b站在a站设置一个cookies,则可以这样做: 1.在b.com下建立一个文件cookies.htm 内容为: 代码如下:内容摘
- 为了能够使用ERWin能够进行基于MySQL数据库的物理设计,可以采用以下方法步骤(假设你已经有了一个设计好的LOGICAL MODEL):
- 前言Java连接MySQL数据库的方法:首先下载解压得到jar库文件,并在对应的项目中导入该库文件;然后添加JDBC;接着在Mysql数据库
- 通过学习斯坦福公开课的线性规划和梯度下降,参考他人代码自己做了测试,写了个类以后有时间再去扩展,代码注释以后再加,作业好多:import n
- 本文讲述了Javascript简单实现面向对象编程继承实例代码。分享给大家供大家参考,具体如下:面向对象的语言必须具备四个基本特征:1.封装
- #!/usr/bin/env python # coding=utf-8 #--------------------------------
- 这篇文章主要介绍了windows环境中利用celery实现简单任务队列过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定
- 为什么要将MySQL数据库必须运行在“普通用户”的状态下呢?与MSSQL SERVER一样,因为如果使用了“超级管理员”或者“本地系统用户”
- 在Python中,有许多用于发送HTTP请求的库,其中最受欢迎的是requests、aiohttp和httpx。这三个库的性能和功能各不相同
- 一般而言下面的就可以完成需求了。def convertToDic(data): jsonDic=json.loads(data) retur
- IT界的每个人都应该知道终端(Terminal)的基本知识,数据科学家也不例外。有时,终端是你的全部,尤其是在将模型和数据管道部署到远程机器
- 本文实例讲述了Python实现替换文件中指定内容的方法。分享给大家供大家参考,具体如下:这里使用python编写的程序,实现如下功能:将文件
- pygame对键盘的连续监听,供大家参考,具体内容如下大家请看下面这一段代码:for event in pygame.event.get()
- 前几天,我们Python猫交流学习群 里的 M 同学提了个问题。这个问题挺有意思,经初次讨论,我们认为它无解。然而,我认为它很有价值,应该继
- numpy.where() 有两种用法:1. np.where(condition, x, y)满足条件(condition),输出x,不满
- 一:修改文件上传语言为PHP 打开fckconfig.js 找到: var _FileBrowserLanguage = 'asp&
- 别人复制你网站的文章时自动加上注释,这个功能你在很多网站应该都有体会过,当我们复制一段内容时,就自动在文章后面加上了网站的一些
- 前言help(argparse)查看说明文档,“argparse - Command-line parsing libr
- 高斯模糊的介绍与原理通常,图像处理软件会提供"模糊"(blur)滤镜,使图片产生模糊的效果。"模糊"