【问题标题】:How to find multiple different Webelements with Selenium that have the same attribute?如何使用 Selenium 查找具有相同属性的多个不同 Web 元素?
【发布时间】:2021-09-27 08:48:25
【问题描述】:

假设我感兴趣的网页部分在 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(或您有的任何其他建议),以便我可以找到所有具有@role='tab' 属性的4 个不同Webelements

顺便说一句,我正在使用 Selenium 和 Java。

【问题讨论】:

    标签: java html selenium xpath


    【解决方案1】:

    使用下面的xpath

    //*[@role='tab']
    

    并且使用可以使用findElements,它将返回一个列表,然后您可以像往常一样遍历该列表以获取内部上下文。

    示例代码:

        List<WebElement> list = driver.findElements(By.xpath("//*[@role='tab']"));
        for (WebElement e  : list) {
            System.out.println(e.getText());
        }
    

    【讨论】:

      猜你喜欢
      • 2013-07-03
      • 1970-01-01
      • 1970-01-01
      • 2017-12-03
      • 2016-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-14
      相关资源
      最近更新 更多