如何从按钮类获取CSS或XPath定位器

如何从按钮类获取CSS或XPath定位器,css,class,xpath,selenium-webdriver,css-selectors,Css,Class,Xpath,Selenium Webdriver,Css Selectors,按钮类和类定位器详细信息仅在那里 它不接受XPath或任何定位器值 请就如何使用button类提出建议 <button class="btn btn-primaryr btn-block btn_wave"> Sign Up </button> 注册 要使用XPath或CSS获取元素。要使用CSS获取元素,可以尝试以下方法: diver.findElement(By.cssSelector("button.btn.btn-primary.btn-block.

按钮类和类定位器详细信息仅在那里

它不接受XPath或任何定位器值

请就如何使用button类提出建议

<button class="btn btn-primaryr btn-block btn_wave">
    Sign Up
</button>

注册

要使用XPath或CSS获取元素。

要使用CSS获取元素,可以尝试以下方法:

diver.findElement(By.cssSelector("button.btn.btn-primary.btn-block.btn_wave"));
这将合并按钮中的所有类,但您可以只使用其中一个,并且可能已经找到了它,如下所示:

diver.findElement(By.cssSelector("button.btn-block.btn_wave"));
您可以通过谷歌搜索了解更多有关
选择器的信息。它们允许您组合HTML和CSS类中的元素

与XPath进行简要比较的一个来源是

无论如何,如果页面中有多个按钮使用相同的CSS类,则可能需要找到一种独特的方法来获取它(例如使用
:n子项
选择器)


希望能有所帮助。

您能详细介绍一下您面临的问题吗?因为你的问题没有任何意义。请确认你的类确实是
btn primaryr
,或者它是否应该是
btn primaryr
。它是btn primaryr!!没有选择可能重复的代码。这就是为什么在问题中发布代码很重要的原因<代码>NullPointerException
未找到,因为找不到元素。如果Selenium找不到元素,它会抛出
NoSuchElementException-element not found
。您的代码中还有另一个问题。现在没有这样的元素异常!!org.openqa.selenium.NoSuchElementException:无法使用css选择器==button.btn-block btn_wave找到元素(警告:服务器未提供任何stacktrace信息)抱歉,我在答案中输入了错误的空格。正确的选择器是
按钮.btn block.btn\u wave
(使用
而不是空格)。在回答中也解决了这个问题。