使用 Selenium 在 Python 中打开链接


在处理自动化任务时,以编程方式打开链接是一个非常常见的需求。Selenium 是一款流行的 Web 测试框架,它提供了强大的工具来处理网页并执行各种操作,例如打开链接等。在本文中,我们将学习使用 Python 在 Selenium 中打开链接的各种方法。

先决条件

在开始之前,请确保您已安装以下软件

  • Python:如果您尚未安装 Python,请安装它。

  • Selenium:在命令提示符中运行 pip install selenium 来安装 Selenium。

  • Web 驱动程序:Selenium 需要一个 Web 驱动程序来与所选浏览器交互。您需要下载特定于浏览器的 Web 驱动程序。

pip install selenium

方法 1:使用 get() 方法打开链接

使用 Selenium 打开链接最简单的方法是使用 WebDriver 对象的 get() 方法。此方法指示浏览器导航到指定的 URL。

语法

get()

driver.get(url)

参数

  • Url:您打算打开的链接。

解释

  • 从 selenium 中导入 webdriver 类。

  • 创建一个驱动程序对象,并通过传递要打开的目标 url 来调用 get() 方法。

示例

from selenium import webdriver

# initialize the web driver
driver = webdriver.Firefox()

# Open the tutorials point website using get() method
driver.get("https://tutorialspoint.com")

输出

方法 2:通过点击元素打开链接

假设您在网页中嵌入了某些链接,例如按钮、图像和链接。在这种情况下,我们不能直接使用 get() 方法来打开这些链接。我们需要使用 selenium 定位元素,然后执行点击操作以打开链接。

语法

find_element():find_element() 用于在网页中定位元素,find_element() 可以与 Id、类和 xpath 一起使用。

driver.find_element(By.XPATH, "xpath")
  • xpath:元素的 xpath。

click():click() 方法用于对 HTML 元素执行点击操作。

element.click()

解释

  • 打开您要在其中打开链接的页面。

  • 使用 find_element() 方法定位要点击的元素。我们在此场景中使用 XPath。

  • find_element() 方法将返回一个元素对象,并使用 click() 方法对元素执行点击操作。

示例

from selenium import webdriver
from selenium.webdriver.common.by import By

# initialize the web driver
driver = webdriver.Firefox()

# Open the tutorials point website using get() method
driver.get("https://tutorialspoint.com/index.htm")

# clicking the courses tab in homepage.
driver.find_element(By.XPATH,"/html/body/header/nav/div/div[1]/ul[2]/li[2]/a").click()

输出

方法 3:在新标签页或窗口中打开链接

现在让我们讨论如何在新标签页或新窗口中打开链接。当我们想要使用多个标签时,这非常方便。

语法

execute_script()

execute_script(script)
  • script:您要执行的脚本。

解释

  • 使用 exeute_script() 方法通过使用命令 window.open() 打开一个新窗口。

  • 使用 switch_to.window() 方法切换到新打开的窗口。

  • 现在像往常一样使用 driver.get() 方法打开链接。

示例

from selenium import webdriver
from selenium.webdriver.common.by import By

# initialize the web driver
driver = webdriver.Firefox()

# Open a new tab
driver.execute_script("window.open();")

# Switch to the newly opened tab
driver.switch_to.window(driver.window_handles[1])

# Open the tutorials point website using get() method
driver.get("https://tutorialspoint.com")

输出

结论

在本文中,我们学习了使用 Python 中的 Selenium 打开链接的多种方法。包括使用 get() 方法直接打开链接、点击包含链接的元素或在新标签页/窗口中打开链接。根据您的用例,您可以选择最适合您的方法。

更新于: 2023年8月9日

2K+ 次查看

开启您的 职业生涯

通过完成课程获得认证

开始
广告