当前位置:首页 > 编程技术 > 正文内容

在 Python 中使用 Selenium 打开链接

yc8889个月前 (08-10)编程技术221

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

先决条件

在我们开始之前,只需确保您已安装以下软件:

  • 蟒: 安装 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() 方法打开链接、单击包含链接的元素或在新选项卡/窗口中打开链接。根据您的使用案例,您可以选择最适合您的方法。


本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!


从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!


本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。


本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。


若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。


本文链接:https://www.10zhan.com/biancheng/10679.html

标签: Python
分享给朋友:

“在 Python 中使用 Selenium 打开链接” 的相关文章

【说站】利用Webhook实现Java项目自动化部署

【说站】利用Webhook实现Java项目自动化部署

用webhook就能实现Java项目自动部署,其实原理很简单。费话不多说,直接往下看教程。1. 创建gitee仓库并初始化2. 在linux安装git3. 在宝塔的软件的商店里下载Webhook4....

【说站】电脑安装MySQL时出现starting the server失败原因及解决方案

【说站】电脑安装MySQL时出现starting the server失败原因及解决方案

今天在安装MySQL时出现starting the server失败,经过查询分析得出以下结论,记录一下操作步骤。原因分析:如果电脑是第一次安装MySQL,一般不会出现这样的报错。如下图所示。star...

【说站】vagrant实现linux虚拟机的安装并配置网络

【说站】vagrant实现linux虚拟机的安装并配置网络

一、VirtualBox的下载和安装1、下载VirtualBox官网下载:https://www.virtualbox.org/wiki/Downloads我的电脑是Windows的,所以下载Wind...

【说站】C#在PDF中添加墨迹注释Ink Annotation的步骤详解

【说站】C#在PDF中添加墨迹注释Ink Annotation的步骤详解

PDF中的墨迹注释(Ink Annotation),表现为徒手涂鸦式的形状;该类型的注释,可任意指定形状顶点的位置及个数,通过指定的顶点,程序将连接各点绘制成平滑的曲线。下面,通过C#程序代码介绍如何...

【说站】Java从resources读取文件内容的方法有哪些

【说站】Java从resources读取文件内容的方法有哪些

本文主要介绍的是java读取resource目录下文件的方法,比如这是你的src目录的结构├── main│ ├── java│ │ └── ...

【说站】linux中redis如何以redis用户重启?

【说站】linux中redis如何以redis用户重启?

通过上图我们可以看到,目前状态是已经以 redis 用户启动着,我想修改下 redis 的密码,然后怎么以 redis 用户重启呢?redis 是 nologin 用户,不能通过 su redis 切...