-1

Java で Selenium WebDriver .getText() 関数を使用して、肯定的な結果が得られないテキストにアクセスしようとしています。WebElement オブジェクトにもありません。取得したいテキストは「eNewsletter Sign Up」です。

これを取得している 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() では、リストの長さが 9 要素であることがわかります。

2番目に:

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

3番目に:

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

どうすればそのテキストを入手できますか?

4

2 に答える 2

0

str2 番目と 3 番目は実行後の文字列の値です。

2番:

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">
于 2013-07-08T13:37:06.193 に答える
0

より簡単な解決策は、リンク テキストで要素を見つけ、その要素で getText を呼び出すことです。

By.ByLinkText By.ByPartialLinkText

于 2013-07-07T02:34:17.543 に答える