使用 Selenium Python 在浏览器中打开和关闭标签页
- 安装 Selenium 和 Chrome WebDriver
- 使用 Selenium Python 在浏览器中打开标签页
- 使用 Selenium Python 在浏览器中打开一个新标签页
- 使用 Selenium Python 关闭浏览器中的标签页
- 使用 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])
输出:
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedIn