获取元素属性值
WebDriver API 的 获取元素属性 命令会返回所引用 web 元素的属性。给定 <input value=foo>
,如果用户将值更改为 bar
,则返回的属性是 bar
,而不是初始值 foo
。这等同于在元素上访问该属性。
语法
方法 | URI 模板 |
---|---|
GET |
/session/{session id}/element/{element id}/property/{name} |
URL 参数
session id
-
会话的标识符。
element id
-
要获取其标签名称的 web 元素的标识符。
name
-
要获取其属性的 web 元素的标识符。
错误
- Session not created
-
会话不存在。
- 未找到该窗口
-
window
对象已被丢弃,表示该标签页或窗口已被关闭。 - 意外的 alert 打开
-
用户提示(如
window.alert
)会阻止命令执行,直到处理完毕。
示例
Python
python
import urllib
from selenium import webdriver
def inline(doc):
return "data:text/html;charset=utf-8,{}".format(urllib.quote(doc))
session = webdriver.Firefox()
session.get(inline("<input value=foo>"))
textbox = driver.find_element_by_tag_name("input")
textbox.send_keys("bar")
print(text_box.get_attribute("value"))
print(text_box.get_property("value"))
输出
foo bar
规范
规范 |
---|
WebDriver # get-element-property |
浏览器兼容性
加载中…
另见
- 获取元素属性 命令
- Stack Overflow 上的 属性和特性之间有什么区别?