我试试这个xpath,但我不知道如何继续? 我在弹出菜单中有2个对象,我想选择第一个
页面的html是:
</div>
<input class="sprite form-enter" type="submit" value="" name="wobi">
</div>
<div class="container">
<img src="/_media/home/img/icons/pension.png">
<div class="login-text-container">
<a class="sprite form-enter" href="https://pension.wobi.co.il/login" value="" name="pension" type="submit"></a>
</div>
</div>
java代码是:
driver.findElement(By.xpath("//input[@class='sprite form-enter' and input//@name='wobi']")).click();
Thread.sleep(2000);
执行代码后,我得到以下异常:
线程中的异常&#34; main&#34; org.openqa.selenium.NoSuchElementException:没有这样的元素:无法找到元素:{&#34;方法&#34;:&#34; xpath&#34;,&#34;选择器&#34;:&#34; / / input [@class =&#39; sprite form-enter&#39;并输入/ @ name =&#39; wobi&#39;]&#34;}
我的代码有什么问题?
答案 0 :(得分:1)
实际上你的错误是xpath
,正确的xpath
会是: -
//input[@class='sprite form-enter' and @name='wobi']
但我建议你,在这里尝试使用By.cssSelector()
,因为它会比xpath
快得多,如下所示: -
driver.findElement(By.cssSelector("input.sprite.form-enter[name = 'wobi']")).click();
答案 1 :(得分:0)
试试这个选择器:
//input[@class='sprite form-enter'][@name='wobi']
答案 2 :(得分:0)
好像你有一个复合类,尝试使用CSSSelector
driver.findElement(By.cssSelector(".sprite.form-enter")).click();