uri*_*ald 4 selenium selenium-webdriver
使用Selenium webdriver我有以下元素
<div data-1223="some data" data-209329="some data" data-dog="some value">
Run Code Online (Sandbox Code Playgroud)
有没有办法获得元素的所有数据属性?对于我可以使用的特定属性
elem.getAttribute('data-1223')
Run Code Online (Sandbox Code Playgroud)
但是如何将所有数据属性组合在一起
Shu*_*ain 13
使用以下代码: -
WebElement element = "Your Element"; // Your element
JavascriptExecutor executor = (JavascriptExecutor) driver;
Object aa=executor.executeScript("var items = {}; for (index = 0; index < arguments[0].attributes.length; ++index) { items[arguments[0].attributes[index].name] = arguments[0].attributes[index].value }; return items;", element);
System.out.println(aa.toString());
Run Code Online (Sandbox Code Playgroud)
希望它能帮到你:)
不可以。Selenium WebDriver 中无法访问您不知道全名的任何属性。您甚至无法枚举 a 的所有属性WebElement。
看起来 jsonwire 协议不支持这个概念。GET_ELEMENT_ATTRIBUTE 命令采用属性名称列表,而不是属性名称模式列表。
您可能可以通过JavascriptExecutorXPath 或 CSS 查询来查询元素的所有属性名称,然后使用它来循环getAttribute。但如果您打算这样做,您可以构建 XPath 或 CSS 查询来直接为您提供值,并WebElement完全将其排除在外。
| 归档时间: |
|
| 查看次数: |
16866 次 |
| 最近记录: |