当前位置:网站首页>selenium 元素信息
selenium 元素信息
2022-07-05 19:49:00 【不负韶华ღ】
概述
当通过selenium定位到一个具体的元素后,可以获取该元素的许多详细信息,比如该元素的css样式、标签名、文本以及获取该元素的子元素等等。
功能
元素是否显示
element.is_displayed()
此方法用于检查连接的元素是否正确显示在网页上。返回一个布尔值,如果连接的元素显示在当前的浏览器上下文中,则为True;否则返回False。
>>> from selenium import webdriver
>>> from selenium.common import By
>>> driver = webdriver.Chrome()
>>> driver.get("https://www.example.com")
>>> element = driver.find_element(By.TAG_NAME, "p")
# 判断该元素是否显示
>>> element.is_displayed()
True
元素是否被选定
element.is_selected()
此方法确定是否已选择引用的元素。此方法广泛用于复选框、单选按钮、输入元素和选项元素。返回一个布尔值,如果在当前浏览上下文中 已选择 引用的元素,则返回 True,否则返回 False。
获取元素属性值
element.get_attribute(name)
用于获取元素的属性值。比如name属性、id属性、class属性、href属性等等。
>>> from selenium import webdriver
>>> from selenium.common import By
>>> driver = webdriver.Chrome()
>>> driver.get("https://www.example.com")
>>> element = driver.find_elements(By.TAG_NAME, "p")[1]
>>> element = element.find_element(By.TAG_NAME, "a")
# 获取href属性
>>> element.get_attribute("href")
'https://www.iana.org/domains/example'
获取元素标签名
element.tag_name
此方法用于获取在当前浏览上下文中 具有焦点的被引用元素的标签名。
>>> from selenium import webdriver
>>> from selenium.common import By
>>> driver = webdriver.Chrome()
>>> driver.get("https://www.example.com")
>>> element = driver.find_element(By.TAG_NAME, "p")
# 获取标签名
>>> element.tag_name
'p'
获取元素文本
element.text
获取特定元素渲染后的文本。
>>> from selenium import webdriver
>>> from selenium.common import By
>>> driver = webdriver.Chrome()
>>> driver.get("https://www.example.com")
>>> element = driver.find_element(By.TAG_NAME, "p")
# 获取元素文本
>>> element.text
'This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.'
获取元素css样式
element.value_of_css_property(property_name)
获取当前浏览上下文中元素的特定计算样式属性的值。
>>> from selenium import webdriver
>>> from selenium.common import By
>>> driver = webdriver.Chrome()
>>> driver.get("https://www.example.com")
>>> element = driver.find_element(By.TAG_NAME, "p")
# 获取元素的文字颜色
>>> element.value_of_css_property("color")
'rgba(0, 0, 0, 1)'
获取元素矩形
element.rect
用于获取参考元素的尺寸和坐标。提取的数据主体包含元素左上角的X轴位置、元素左上角的y轴位置、元素的高度、元素宽度。
>>> from selenium import webdriver
>>> from selenium.common import By
>>> driver = webdriver.Chrome()
>>> driver.get("https://www.example.com")
>>> element = driver.find_element(By.TAG_NAME, "p")
# 获取元素的矩形坐标
>>> element.rect
{'height': 60, 'width': 418, 'x': 32, 'y': 115.67500305175781}
获取元素子元素
element.find_element()
用于在父元素的上下文中查找匹配的子元素(WebElement)。
>>> from selenium import webdriver
>>> from selenium.common import By
>>> driver = webdriver.Chrome()
>>> driver.get("https://www.example.com")
>>> element = driver.find_elements(By.TAG_NAME, "p")[1]
# 获取元素的子元素
>>> element = element.find_element(By.TAG_NAME, "a")
>>> element.text
'More information...'
边栏推荐
- Common - Hero Minesweeper
- Necessary skills for interview in large factories, 2022android will not die, I will not fall
- 【obs】libobs-winrt :CreateDispatcherQueueController
- Fundamentals of shell programming (Part 8: branch statements -case in)
- 【obs】libobs-winrt :CreateDispatcherQueueController
- Float.floatToRawIntBits的返回值具体意思,将float转为byte数组
- Base du réseau neuronal de convolution d'apprentissage profond (CNN)
- Debezium series: modify the source code to support drop foreign key if exists FK
- No matter how busy you are, you can't forget safety
- XaaS 陷阱:万物皆服务(可能)并不是IT真正需要的东西
猜你喜欢
集合
【obs】QString的UTF-8中文转换到blog打印 UTF-8 char*
Force buckle 729 My schedule I
SecureRandom那些事|真伪随机数
Django uses mysqlclient service to connect and write to the database
aggregate
webuploader文件上传 拖拽上传 进度监听 类型控制 上传结果监听控件
Postman核心功能解析-参数化和测试报告
CADD课程学习(7)-- 模拟靶点和小分子相互作用 (半柔性对接 AutoDock)
XaaS 陷阱:万物皆服务(可能)并不是IT真正需要的东西
随机推荐
Bitcoinwin (BCW)受邀参加Hanoi Traders Fair 2022
使用 RepositoryProvider简化父子组件的传值
安卓面试宝典,2022Android面试笔试总结
城链科技数字化创新战略峰会圆满召开
What do software test engineers do? How about the prospect of treatment?
司空见惯 - 英雄扫雷鼠
Shell编程基础(第8篇:分支语句-case in)
openh264解码数据流向分析
Xaas trap: all things serve (possible) is not what it really needs
Common - Hero Minesweeper
如何安全快速地从 Centos迁移到openEuler
What are general items
Where is the operation of new bonds? Is it safer and more reliable to open an account
Reinforcement learning - learning notes 4 | actor critical
Based on vs2017 and cmake GUI configuration, zxing and opencv are used in win10 x64 environment, and simple detection of data matrix code is realized
Thread pool parameters and reasonable settings
What is the function of okcc call center
Is it safe for Guohai Securities to open an account online?
Zhongang Mining: analysis of the current market supply situation of the global fluorite industry in 2022
信息/数据