Selenium API-WebElement 属性

当我们使用 Selenium 的定位方法定位到元素之后,会返回一个 WebElement 对象(),该对象用来描述 Web 页面上的一个元素,那么,关于元素的常用属性,主要有:

序号 方法/属性 描述
1 WebElement.id 获取元素的标示
2 WebElement.size 获取元素的宽与高,返回一个字典
3 WebElement.rect 除了获取元素的宽与高,还获取元素的坐标
4 WebElement.tag_name 获取元素的标签名称
5 WebElement.text 获取元素的文本内容

WebElement.id

获取元素的标示:

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()  # 打开浏览器
driver.maximize_window()  # 浏览器最大化
driver.get("https://www.baidu.com/")  # 跳转至百度首页
sleep(1)
element = driver.find_element_by_id("kw")  # 定位搜索输入框
print(element.id)  # 25c961a3-4d39-4e67-b1f6-b72c89058a29

driver.quit()  # 关闭浏览器

WebElement.size

获取元素的宽与高,返回一个字典类型数据:

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()  # 打开浏览器
driver.maximize_window()  # 浏览器最大化
driver.get("https://www.baidu.com/")  # 跳转至百度首页
sleep(1)
element = driver.find_element_by_id("kw")  # 定位搜索输入框
print(element.size)  # {'height': 44, 'width': 548}

driver.quit()  # 关闭浏览器

WebElement.rect

获取元素宽与高的同时,还获取元素的坐标,同样返回的是一个字典类型数据:

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()  # 打开浏览器
driver.maximize_window()  # 浏览器最大化
driver.get("https://www.baidu.com/")  # 跳转至百度首页
sleep(1)
element = driver.find_element_by_id("kw")  # 定位搜索输入框
print(element.rect)  # {'height': 44, 'width': 548, 'x': 633, 'y': 222.234375}

driver.quit()  # 关闭浏览器

WebElement.tag_name

获取元素的标签名称:

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()  # 打开浏览器
driver.maximize_window()  # 浏览器最大化
driver.get("https://www.baidu.com/")  # 跳转至百度首页
sleep(1)
element = driver.find_element_by_id("kw")  # 定位搜索输入框
print(element.tag_name)  # input

driver.quit()  # 关闭浏览器

WebElement.text

获取元素的文本值,无文本内容则返回空字符串:

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()  # 打开浏览器
driver.maximize_window()  # 浏览器最大化
driver.get("https://www.baidu.com/")  # 跳转至百度首页
sleep(1)
elements = driver.find_elements_by_xpath("//div[@id='s-top-left']/a")  # 定位搜索输入框
for element in elements:
    print(element.text)  # 新闻 hao123 地图 视频 贴吧 学术

driver.quit()  # 关闭浏览器

总结

你可能感兴趣的:(selenium,自动化测试,测试,转行)