先决条件
在我们开始之前,只需确保您已安装以下软件:
- 蟒: 安装 Python,如果你还没有的话。
- 硒: 通过在命令提示符下运行 pip 安装硒来安装硒。
- 网页驱动程序: Selenium需要一个Web驱动程序来与所选浏览器进行交互。您需要下载特定于浏览器的 Web 驱动程序。
pip install selenium
方法 1:使用 get() 方法打开链接
使用 Selenium 打开链接的最简单方法是使用 WebDriver 对象的 get() 方法。此方法指示浏览器导航到指定的 URL。
语法
获取()
driver.get(url)
参数:
- 网址:您打算打开的链接。
解释
- 从硒导入Web驱动程序类。
- 创建一个驱动程序对象,并通过传递要打开的所需 url 来调用 get() 方法。
例
from selenium import webdriver # initialize the web driver driver = webdriver.Firefox() # Open the tutorials point website using get() method driver.get("https://www.tutorialspoint.com")
输出
方法 2:通过单击元素打开链接
假设您在网页中嵌入了一些链接,例如按钮、图像和链接。在这种情况下,我们不能直接使用 get() 方法来打开这些链接。我们需要使用硒找到元素,然后执行单击操作以打开链接。
语法
find_element():find_element() 用于在网页中定位元素,find_element() 可以与 Id、类和 xpath 一起使用。
driver.find_element(By.XPATH, "xpath")
- xpath:Xpath of the element
click(): the click() method is used to perform a click operation on an HTML element.
element.click()
Explanation
- 打开要在其中打开链接的页面。
- 使用 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://www.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)
- 脚本: 要执行的脚本。
解释
- 使用 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://www.tutorialspoint.com")
输出
结论
在本文中,我们学习了在 Python 中使用 Selenium 打开链接的多种方法。包括直接使用 get() 方法打开链接、单击包含链接的元素或在新选项卡/窗口中打开链接。根据您的使用案例,您可以选择最适合您的方法。