繁体   English   中英

Selenium WebDriver getText()

[英]Selenium WebDriver getText()

在 Java 中使用 Selenium WebDriver .getText() 函数,我试图访问一些没有任何积极结果的文本。 甚至不在 WebElement 对象中。 我要获取的文本是:“电子通讯注册”

我从中获取的 HTML 代码如下所示:

<a class="footer" href="/contact/email-sign-up/" onclick="aloneTracking('footerEmailSignUp')">eNewsletter Sign Up</a>

Java 代码如下所示:

     List<WebElement> idElemList = driver.findElements(By.className("footer"));

    System.out.println(idElemList.size());
    String str = "";
    if (idElemList.size() > 0) {
        WebElement firstElement = idElemList.get(0);
        str = firstElement.toString();
        System.out.println("**** : " + str);
        str = firstElement.getText();
        System.out.println("¨¨" + str);
    }

在第一个 System.out.println() 中,我知道列表有九个元素长。

在第二个:

<a onclick="aloneTracking('footerEmailSignUp')" href="/contact/email-sign-up/" class="footer">

在第三:

<a onclick="aloneTracking('footerEmailSignUp')" href="/contact/email-sign-up/" class="footer">

我怎样才能得到那个文本?

一个更简单的解决方案是通过链接文本查找元素并在该元素上调用 getText

By.ByLinkText By.ByPartialLinkText

在第二个和第三个是做完后String str的值:

第二:

firstElement = idElemList.get(0);
str = firstElement.toString();
System.out.println("xxxx : " + str);

System.out.println 的结果:

 xxxx : <a onclick="aloneTracking('footerEmailSignUp')" href="/contact/email-sign-up/" class="footer">

第三:

WebElement firstElement = idElemList.get(0);
str = firstElement.getText();
System.out.println("¨¨ : " + str);

System.out.println 的结果:

¨¨ : <a onclick="aloneTracking('footerEmailSignUp')" href="/contact/email-sign-up/" class="footer">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM