前言
使用selenium如何获取元素的标签、大小、内容、属性、css等值,接下来将详细讲解
获取元素的标签和元素大小
from selenium import webdriver
import unittest
class Test_BasicInfo(unittest.TestCase):
def test_getBasicInfo(self):
url = 'http://www.baidu.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
newElement = self.driver.find_element_by_link_text('新闻')
# 打印查找到元素的基本信息
print('元素的标签名:', newElement.tag_name)
print('元素的size:', newElement.size)
test1 = Test_BasicInfo()
test1.test_getBasicInfo()
结果:
元素的标签名: a
元素的size: {'height': 24, 'width': 26}
获取元素的文本内容
from selenium import webdriver
import unittest
import time
class Test_ElementText(unittest.TestCase):
def test_getWebElementText(self):
url = 'http://www.baidu.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
time.sleep(3)
# 获取元素的文本内容
a_text = self.driver.find_element_by_xpath('//*[@class="mnav"][1]').text
print(a_text)
test1 = Test_ElementText()
test1.test_getWebElementText()
结果
获取页面元素的属性
from selenium import webdriver
import unittest
class Test_ElementAttribute(unittest.TestCase):
def test_getWebElementAttribute(self):
url = 'http://www.sogou.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
query1 = self.driver.find_element_by_id('query')
# 获取搜索输入框的name属性
print(query1.get_attribute('name'))
query1.send_keys('测试开发')
# 获取搜索框的value值,既输入框里的文本内容
print(query1.get_attribute('value'))
test1 = Test_ElementAttribute()
test1.test_getWebElementAttribute()
结果:
获取页面的css属性值
from selenium import webdriver
import unittest
class Test_ElementCssValue(unittest.TestCase):
def test_getElementCssValue(self):
url = 'http://www.baidu.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
case = self.driver.find_element_by_id('kw')
# 使用value_of_css_property()方法获取元素的css属性值
print('高度:', case.value_of_css_property('height'))
print('宽度:', case.value_of_css_property('width'))
test1 = Test_ElementCssValue()
test1.test_getElementCssValue()
结果:
高度: 22px
宽度: 500px
python爬虫之selenium--获取HTML源码断言和URL地址
python爬虫之selenium--设置浏览器的位置和高度宽度
python爬虫之selenium--页面元素是否可见和可操作
python爬虫之selenium--高亮显示正在操作的元素
转自:https://www.cnblogs.com/zouzou-busy/p/11219824.html