获取 href 值 (WebDriver)

2022-09-02 19:23:37

如何从 href 获取值?

像这样,例如:

<div id="cont"><div class="bclass1" id="idOne">Test</div>

    <div id="testId"><a href="**NEED THIS VALUE AS STRING**">
    <img src="img1.png" class="clasOne" />
    </a>

</div>
</div>
</div>

我需要该值作为字符串。

我试过这个:

String e = driverCE.findElement(By.xpath("//div[@id='testId']")).getAttribute("href");
            JOptionPane.showMessageDialog(null, e);

但只返回 NULL 值...


答案 1

您已将元素指向“div”而不是“a”

请尝试以下代码

driverCE.findElement(By.xpath("//div[@id='testId']/a")).getAttribute("href");

答案 2

如果您获得了多个锚点标记,则以下代码片段将有助于查找href

//find all anchor tags in the page
List<WebElement> refList = driver.findElements(By.tagName("a"));

   //iterate over web elements and use the getAttribute method to 
   //find the hypertext reference's value.

    for(WebElement we : refList) {
        System.out.println(we.getAttribute("href"));
    }

推荐