1.核心属性
在使用 webDriver 的find方法定位到元素后,会返回一个 webElement对象,该对象用来描述web页面上的一个元素

from selenium import webdriver
from time import sleep
class TestElement01(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://sahitest.com/demo/linkTest.htm')
def test_webelement_prop(self):
e = self.driver.find_element_by_id('t1')
e1 = WebElement;
print(type(e))
print(e.id)
print(e.tag_name)
print(e.size)
print(e.rect)
print(e.text)
if __name__ == '__main__':
case = TestElement01()
case.test_webelement_prop()
返回的结果如下:

2.核心方法

代码如下所示:
from selenium import webdriver
from time import sleep
class TestElement01(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.baidu.com')
def test_webelement_prop(self):
e = self.driver.find_element_by_id('kw')
print(type(e))
print(e.id)
print(e.tag_name)
print(e.size)
print(e.rect)
print(e.text)
def test_webelement_method(self):
e = self.driver.find_element_by_id('kw')
e.send_keys('hello world')
sleep(2)
print(e.get_attribute('type'))
print(e.get_attribute('name'))
print(e.get_attribute('value'))
print(e.value_of_css_property('font'))
print(e.value_of_css_property('color'))
sleep(2)
e.clear()
if __name__ == '__main__':
case = TestElement01()
#case.test_webelement_prop()
case.test_webelement_method()
通过查看源码可知:webElement也有find方法,比如先获取一个form表单的webElement,再通过find方法找到其他元素,代码如下所示:
from selenium import webdriver
from time import sleep
class TestElement02(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.baidu.com')
def test_method2(self):
form_element = self.driver.find_element_by_xpath('//*[@id="form"]')
form_element.find_element_by_id('kw').send_keys('bala')
if __name__ == '__main__':
case = TestElement02()
case.test_method2()
本文介绍了如何使用Selenium WebDriver定位网页元素并操作这些元素。详细解释了WebElement对象的属性及方法,包括获取元素ID、标签名、尺寸等核心属性,以及send_keys、clear等常用方法。此外还展示了如何通过已定位的元素进一步查找子元素。
962





