gpt4 book ai didi

java - selenium 中的 WebElement 使用 attr 选择

转载 作者:行者123 更新时间:2023-11-29 10:11:08 25 4
gpt4 key购买 nike

我喜欢在java中使用selenium在页面中选择这个标签

<input class="btn btn-success addReportBtn" type="submit" />

这是我到目前为止尝试过的:

driver.findElement(By.xpath("//input[type=submit]"));
driver.findElement(By.cssSelector("//input[@type='submit']"));

我分别得到了他们两个的异常:

org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"xpath","selector":"input[type=submit]"}

org.openqa.selenium.InvalidSelectorException: invalid selector: An invalid or illegal selector was specified

如果我使用 Jsoup,我可以通过以下方式轻松获得它:

System.out.println(document.select("input[type=submit]"));

我做错了什么?

最佳答案

正如@Jason 所指出的,您严重混淆了 XPath 表达式和 CSS 选择器语法。正确的表达方式是:

driver.findElement(By.xpath("//input[@type='submit']"));
driver.findElement(By.cssSelector("input[type=submit]"));

请注意,我不仅会检查按钮类型,因为页面上通常有多个提交按钮。有一个 addReportBtn 类,我会依赖定位器:

driver.findElement(By.cssSelector("input.addReportBtn"));

这也为可读性加分。

关于java - selenium 中的 WebElement 使用 attr 选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33827669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com