无法使用Java中的Selenium捕获文本

发布于 2025-02-07 07:32:22 字数 866 浏览 3 评论 0原文

我正在使用Java中的Selenium从以下代码段中捕获值。但这是返回无效的值。

<div class="selenium" style="max-height: 0px !important; max-width: 0px !important;">
<div class="share metric">
<span id="nsf" class="nsf">
"2.2210636079249215+2.224479431183342+2.2244191794364805+2.2635962763351296+2.289855072463768+2.3309352517985613+2.3216783216783217+2.360018509949098+null+2.042235790730032+0.000006222369997702123+0</span></div>

我尝试使用

driver.findElement(By.xpath("//div[@class='share metric']/span[@id='nsf']")).getAttribute("value")

driver.findElement(By.xpath("//div[@class='share metric']/span[@id='nsf']")).gettext()

I am using Selenium in Java to capture values from the below code snippet. But it's returning a null value.

<div class="selenium" style="max-height: 0px !important; max-width: 0px !important;">
<div class="share metric">
<span id="nsf" class="nsf">
"2.2210636079249215+2.224479431183342+2.2244191794364805+2.2635962763351296+2.289855072463768+2.3309352517985613+2.3216783216783217+2.360018509949098+null+2.042235790730032+0.000006222369997702123+0</span></div>

I tried using

driver.findElement(By.xpath("//div[@class='share metric']/span[@id='nsf']")).getAttribute("value")

and

driver.findElement(By.xpath("//div[@class='share metric']/span[@id='nsf']")).gettext()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

各空 2025-02-14 07:32:22

您的XPath是错误的,跨度标签不是&lt; div class =“ share Metric”&gt;的孩子。

为什么完全使用XPATH?通过其ID局部局部局部效果很好。

代码:

    WebElement nsf = driver.findElement(By.id("nsf"));
    String text = nsf.getText();
    System.out.println(text);

输出:

tarting ChromeDriver 101.0.4951.41 (93c720db8323b3ec10d056025ab95c23a31997c9-refs/branch-heads/4951@{#904}) on port 28658
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
[1655279888.338][WARNING]: This version of ChromeDriver has not been tested with Chrome version 102.
Čer 15, 2022 9:58:08 DOP. org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
"2.2210636079249215+2.224479431183342+2.2244191794364805+2.2635962763351296+2.289855072463768+2.3309352517985613+2.3216783216783217+2.360018509949098+null+2.042235790730032+0.000006222369997702123+0

Your xpath is wrong, the span tag is not a child of <div class="share metric">.

Why using xpath at all? Localting the element by it's id works just fine.

code:

    WebElement nsf = driver.findElement(By.id("nsf"));
    String text = nsf.getText();
    System.out.println(text);

output:

tarting ChromeDriver 101.0.4951.41 (93c720db8323b3ec10d056025ab95c23a31997c9-refs/branch-heads/4951@{#904}) on port 28658
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
[1655279888.338][WARNING]: This version of ChromeDriver has not been tested with Chrome version 102.
Čer 15, 2022 9:58:08 DOP. org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
"2.2210636079249215+2.224479431183342+2.2244191794364805+2.2635962763351296+2.289855072463768+2.3309352517985613+2.3216783216783217+2.360018509949098+null+2.042235790730032+0.000006222369997702123+0
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文