获取元素属性值

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

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

浏览器兼容性

另见