假设我感兴趣的网页部分在 HTML 中看起来像这样:
<ul role = "tablist">
<li>
<button role="tab"> 1 </button>
</li>
<li>
<button role="tab"> 2 </button>
</li>
<li>
<span role="tab"> 3 </span>
</li>
<li>
<button role="tab"> 4 </button>
</li>
</ul>
我如何构建一个 Xpath
(或您的任何其他建议),以便我可以找到所有 4 个不同的 Webelements
具有属性 @role='tab'
?顺便说一句,我正在将 Selenium 与 Java 一起使用。
最佳答案
使用以下 xpath
:
//*[@role='tab']
和使用可以使用findElements
这将返回一个列表,然后您可以像往常一样遍历列表以获取内部上下文。示例代码:
List<WebElement> list = driver.findElements(By.xpath("//*[@role='tab']"));
for (WebElement e : list) {
System.out.println(e.getText());
}
关于java - 如何使用具有相同属性的 Selenium 查找多个不同的 Webelement?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68444725/