如何使用xpath获取HTML5数据属性?

2022-09-01 09:30:13

如何使用 Webdriver 的 xpath 获取第一个表 (table1)?

<span id="dynamically generated id" data-id="table1">
  <table>
  ...
  </table>
</span>

<span id="dynamically generated id" data-id="table2">
  <table>
  ...
  </table>
</span>

我能够获取所有元素,但我想在其中过滤文本以获取确切的元素。data-idtable1

这不起作用!

driver.findElement(By.xpath("//@*[starts-with(name(),'data-id') [contains(text(),'table1')]]")); 

答案 1

你得到的表格是这样的:

//span[@data-id='table1']/table

选择该属性并获取 name 的子元素。data-idtable


答案 2

回答我自己的问题...这似乎得到了确切的元素。

driver.findElement(By.xpath("//*[@data-id='table1']"))

推荐