1、元素大小
要想获取元素大小,调用WebElement对象的size属性即可。
示例:
from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Firefox() # 打开百度 driver.get("https://www.baidu.com") # 定位百度搜索输入框元素 ele = driver.find_element(By.XPATH, "//input[@id=‘kw‘]") # 获取元素大小 ele_size = ele.size print(type(ele_size)) print(ele_size)
执行结果:
<class ‘dict‘> {‘height‘: 44.0, ‘width‘: 548.0}
我们可以看到,WebElement对象调用属性size,返回结果为一个字典(dict)类型的数据,有height和width两个键值对。
2、获取元素的属性值
要想获取元素的某个属性值,WebElement对象调用get_attribute(属性名)即可。
示例:
from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Firefox() # 打开百度 driver.get("https://www.baidu.com") # 定位百度搜索输入框元素 ele = driver.find_element(By.XPATH, "//input[@id=‘kw‘]") # 获取元素的id属性 a_id = ele.get_attribute("id") print(a_id) # 获取元素的class属性 a_class = ele.get_attribute("class") print(a_class)
执行结果:
kw
s_ipt
3、获取元素的文本内容:
有时候,我们不仅需要获取某个元素的属性值,还需要获取元素的文本内容。
元素的文本内容,WebElement对象调用text属性即可。
示例:
from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Firefox() # 打开百度 driver.get("https://www.baidu.com") # 定位百度首页的地图按钮 ele = driver.find_element(By.XPATH, "//a[@class=‘mnav c-font-normal c-color-t‘]") # 获取元素的文本内容 map_text = ele.text print(map_text)
执行结果为新闻
4、获取元素的位置
要想获取元素的左边位置,WebElement调用locaiton属性即可
示例:
from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Firefox() # 打开百度 driver.get("https://www.baidu.com") # 定位百度首页的地图按钮 ele = driver.find_element(By.XPATH, "//a[@class=‘mnav c-font-normal c-color-t‘]") # 获取元素的位置 ele_location = ele.location print(ele_location)
执行结果:
{‘x‘: 24, ‘y‘: 19}
我们可以看到,返回结果为一个字典,含有x,y两个键值对
selenium元素操作篇:元素大小、位置坐标、元素文本内容、属性值获取
原文:https://www.cnblogs.com/ctltest/p/14490223.html