我在页面上有一个LogOut按钮。我试图在Selenium中自动化它。以下是该元素的源代码。注销按钮的Css选择器
<a class="_2k0gmP" data-reactid="53" href="#">Log Out</a>
这是我使用
driver.findElement(By.cssSelector("._2k0gmP[text='Log Out']"));
的代码,但我反复得到没有这样的Elemet发现异常,有时无效的选择异常。有人可以帮助我吗?
我在页面上有一个LogOut按钮。我试图在Selenium中自动化它。以下是该元素的源代码。注销按钮的Css选择器
<a class="_2k0gmP" data-reactid="53" href="#">Log Out</a>
这是我使用
driver.findElement(By.cssSelector("._2k0gmP[text='Log Out']"));
的代码,但我反复得到没有这样的Elemet发现异常,有时无效的选择异常。有人可以帮助我吗?
不要离开了下划线:
driver.findElement(By.cssSelector("._2k0gmP[text='Log Out']"));
然而,在这种情况下,我宁愿
driver.findElement(By.linkText("Log Out"));
的XPath:
driver.findElement(By.xpath("//a[text()='Log Out']");
虽然这可能在理论上回答这个问题,但如果您提供解答的答案而不仅仅是一个代码唯一的答案会更好。 – JeffC
你得到InvalidSelectorException
因为你可以” t使用cssSelector
根据它的内部HTML文本来查找元素。为此,您可以使用xpath或linkText选择器。
的XPath:driver.findElement(By.xpath(".//a[text()='Log Out']");
LINKTEXT:driver.findElement(By.linkText("Log Out"));
NoSuchElement
异常被抛出可能是因为你在课堂上选择离开了_
作为@gecki这么说你的选择是寻找不存在的类。
是@acikojevic,linkText选项实际工作。谢谢。 –
您无法找到使用CSS选择器包含的文本。 – JeffC
@Gecki,linkText选择器实际工作。谢谢!! –