73

我看到有一些方法可以通过 Selenium 的各种 Java 库获取元素的屏幕位置和尺寸,例如org.openqa.selenium.Dimension提供..getSize()org.openqa.selenium.PointgetLocation()

有没有办法通过 Selenium Python 绑定获取元素的位置或尺寸?

4

1 回答 1

124

知道了!线索在selenium.webdriver.remote.webelement — Selenium 3.14 文档。

WebElements 具有属性.size.location. 两者都是类型dict

driver = webdriver.Firefox()

e = driver.find_element_by_xpath("//someXpath")

location = e.location
size = e.size
w, h = size['width'], size['height']

print(location)
print(size)
print(w, h)

输出:

{'y': 202, 'x': 165}
{'width': 77, 'height': 22}
77 22

它们还有一个名为的属性rect,它本身就是 a dict,并且包含元素的sizeand location

于 2013-03-19T22:02:28.213 回答