乐趣区

关于selenium:Selenium-APIWebElement-属性

当咱们应用 Selenium 的定位办法定位到元素之后,会返回一个 WebElement 对象(<class 'selenium.webdriver.remote.webelement.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()  # 敞开浏览器 

总结

退出移动版