Python 中 Selenium 的 getAttribute() 函数详解
作者:迹忆客
Selenium 的 Python 模块旨在提供自动化测试过程。 Selenium Python 绑定包括一个用于编写 Selenium WebDriver 功能/验收测试的简单 API。
拥有移动能力并没有多大好处。 我们想要与页面交互,或者更准确地说,与组成页面的 HTML 片段交互。
本文将解释如何使用 Selenium 的 getAttribute()
方法。
Selenium Python 中的 getAttribute() 函数
getAttribute() 方法可以检索元素属性,例如锚标记的 href 属性。 该函数最初将尝试返回指定属性的值。
如果不存在这样的属性,则返回具有相同名称的属性值。 但是,如果元素中不存在属性,则不会返回任何内容。
什么是属性
HTML 中的属性定义元素的属性。 属性由名称-值对组成,这意味着每个属性都有一个值和一个名称。
它们的值用双引号括起来,并在开始标记中提供。 HTML 属性包括以下内容:
< a target="_blank" href="#" rel="external nofollow" class="btn" > <img src="#" class="image" alt="myImage" > < input style="height:50px;" class="form-control" type="email" placeholder="Enter email" name="emailAddress" id="emailAddress" > < button οnclick="#" class="btn" value="" >Login< /button >
从上面的例子来看,HTML 标签有多种属性和值。 例如,输入标签具有许多属性,例如类、样式、占位符、类型、名称和id。
每个属性都有一个用双引号引起来的数字。 现在我们了解了属性对于 HTML Web 元素的含义或它的显示方式,让我们检查一下 getAttributes()
方法为何有用。
Selenium Python 中 getAttribute() 函数的优点
考虑这样一种情况,我们必须仔细检查输入字段上的占位符内容、图片源和字段大小。 getAttribute()
方法解决了这种情况下的问题。
要获取属性的值,请找到保存该属性的 Web 元素并使用 getAttribute()
方法。
让我们通过一个实际示例来讨论该方法的语法,如下所示。
# python GetElem.get_attribute("href")
从上面的语法可以看出,我们正在尝试获取 href 属性。 现在,我们已经了解了使用 getAttribute() 方法的基本语法,现在让我们看一下使用 getAttribute() 方法获取值的工作示例。
为了开发基本的测试脚本,我们将使用一个虚拟网站。 不用再犹豫不决了,让我们在继续讨论代码之前先看看用例:
- 我们将首先访问虚拟站点。
- 在主页前端,我们将获得链接的 href 属性。
- 我们还将获得图像的 src 属性。
现在,让我们看看这个用例的代码。
示例代码:
# python from selenium import webdriver chromeDriver = webdriver.Chrome() chromeDriver.get("https://www.inventicosolutions.com/") getElemByLink = chromeDriver.find_element_by_link_text("About Us") print(getElemByLink.get_attribute('href')) getElemByClass = chromeDriver.find_element_by_xpath("/html/body/main/div/div[1]/section[1]/div/div/div/div[7]/div/img") print(getElemByClass.get_attribute('src'))
输出:
从上面的示例中可以看出,我们可以使用 getAttribute()
方法从 HTML 标记中获取任何属性。 这种方法可以帮助我们进行网页抓取,从网站上获取特定数据,例如链接和图像。
到此这篇关于Python 中 Selenium 的 getAttribute() 函数的文章就介绍到这了,更多相关Python getAttribute() 函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!