使用 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])
输出:
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串