使用 Selenium Python 在浏览器中打开和关闭标签页
Selenium 是强大的 Web 自动化和测试工具。我们使用 Selenium 编写脚本,它可以控制 Web 浏览器并执行特定操作。
在本指南中,我们将使用 Python 编写一个脚本,该脚本将自动在新标签页中打开和关闭网站。
安装 Selenium 和 Chrome WebDriver
要安装 Selenium,我们使用以下命令。
#Python 3.x
pip install selenium
ChromeDriver 是 Selenium WebDriver 用来与 Chrome 交互的另一个可执行文件。如果我们想在 Chrome 网络浏览器上自动执行任务,我们还需要安装 ChromeDriver。
根据 Chrome 浏览器的版本,我们需要为其选择兼容的驱动程序。以下是安装和配置 Chrome 驱动程序的步骤:
- 点击这个链接。根据你的 Chrome 浏览器版本和操作系统类型下载 Chrome 驱动程序。
- 如果要查找 Chrome 浏览器的版本,点击 Chrome 右上角的三个点,点击帮助,选择关于谷歌浏览器。你可以在 about 部分查看 Chrome 版本。
- 解压 zip 文件并运行 Chrome 驱动程序。
使用 Selenium Python 在浏览器中打开标签页
我们在以下代码中创建了 WebDriver 实例,并指定了 Chrome 驱动程序的路径。然后,我们使用带有驱动程序实例的 get()
方法设置目标网站的 URL。
它将在 Chrome 浏览器中打开目标网站。
示例代码:
# Python 3.x
from selenium import webdriver
driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.get("https://www.verywellmind.com/what-is-personality-testing-2795420")
输出:
使用 Selenium Python 在浏览器中打开一个新标签页
要在同一浏览器窗口中打开一个新标签页,我们将使用 JavaScript 执行器。它使用 execute_script()
方法执行 JavaScript 命令。
我们将 JavaScript 命令作为参数传递给此方法。我们将使用 window.open()
命令在窗口中打开另一个标签页。
窗口句柄存储在 Web 浏览器中打开的窗口的唯一地址。switch_to_window()
方法切换到指定的窗口地址。
1
表示第二个窗口的地址。最后,我们将使用 get()
方法提供新网站的 URL。
示例代码:
# Python 3.x
from selenium import webdriver
driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.get("https://www.verywellmind.com/what-is-personality-testing-2795420")
driver.execute_script("window.open('');")
driver.switch_to.window(driver.window_handles[1])
driver.get(
"https://www.indeed.com/career-advice/career-development/types-of-personality-test"
)
输出:
使用 Selenium Python 关闭浏览器中的标签页
我们将在驱动程序中使用 close()
方法来关闭标签页。
示例代码:
# Python 3.x
from selenium import webdriver
driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
url = "https://www.16personalities.com/free-personality-test"
driver.get(url)
driver.close()
使用 Selenium Python 在浏览器中关闭一个标签页并切换到另一个标签页
在以下代码中使用 Selenium,我们在标签页中打开了一个 URL。我们打开另一个标签页并使用 switch_to.window(driver.window_handles[1])
切换到它。
新标签页将打开指定的 URL。现在,我们将使用 close()
方法关闭此标签页,并使用 switch_to.window(driver.window_handles[0])
方法切换回上一个标签页。
示例代码:
# Python 3.x
from selenium import webdriver
driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
url = "https://www.16personalities.com/free-personality-test"
driver.get(url)
driver.execute_script("window.open('');")
driver.switch_to.window(driver.window_handles[1])
driver.get("https://www.16personalities.com/personality-types")
driver.close()
driver.switch_to.window(driver.window_handles[0])
输出:
相关文章
Conda 安装 Cv2
发布时间:2023/12/24 浏览次数:106 分类:Python
-
本教程演示了如何在 Python 中为 anaconda 用户安装 cv2 模块。互联网上有许多可用的 Python IDE。一种这样的 Python IDE 是 Anaconda,这是一种开源软件
使用 OpenCV solvepnp() 函数解决 PnP 问题
发布时间:2023/12/24 浏览次数:85 分类:Python
-
本教程讨论在 Python 中使用 OpenCV 中的 solvepnp 函数。OpenCV 库是一个开源库,旨在帮助完成计算机视觉任务。
Python 中 NumPy 数组的滑动平均值
发布时间:2023/12/24 浏览次数:145 分类:Python
-
本教程演示了如何在 python 中计算 numpy 数组的滑动平均值。滑动平均值通常用于通过计算特定时间间隔的数据平均值来研究时间序列数据。
在 Python 中计算马氏距离
发布时间:2023/12/24 浏览次数:125 分类:Python
-
有两个主要方法可用于在 Python 中查找两个 NumPy 数组之间的马氏距离,scipy 库中的 cdist() 函数和 numpy 包中的 numpy.einsum() 函数。
在 Python 中实现 ReLU 函数
发布时间:2023/12/24 浏览次数:62 分类:Python
-
本教程讨论 Relu 函数以及如何在 Python 中实现它。Relu 函数是机器学习的基础,在使用深度学习时必不可少。
杀死一个 Python 进程
发布时间:2023/12/24 浏览次数:103 分类:Python
-
本文讨论了杀死 Python 进程的三种方法。在使用 Python 编程时,有时我们的程序会陷入无限循环。
在 Python 中获取文件扩展名
发布时间:2023/12/24 浏览次数:79 分类:Python
-
它演示了如何在 Python 中获取文件扩展名。本教程将介绍如何在 Python 中从文件名中获取文件扩展名。
在 Python 中读取文件的第一行
发布时间:2023/12/24 浏览次数:156 分类:Python
-
本教程演示了如何在 Python 中读取文本文件的第一行。在 Python 中,我们有内置的函数可以处理不同的文件操作。
在 Python 中读取二进制文件
发布时间:2023/12/24 浏览次数:175 分类:Python
-
本教程演示了如何在 Python 中读取二进制文件。程序或内部处理器对二进制文件进行解释。它包含字节作为内容。