如何点击这个带有硒的按钮

时间:2017-03-27 19:31:47

标签: java selenium selenium-webdriver

如何使用selenium点击此按钮?



<a class="_42ft _4jy0 rfloat _ohf _4jy4 _517h _51sy" role="button" href="" ajaxify="/nux/wizard/step/?action=skip" rel="async-post" id="u_9_8">İleri</a>
&#13;
&#13;
&#13;

6 个答案:

答案 0 :(得分:1)

我希望我之前想到的是如何在这里创建我自己的高级CSS选择器是教我的页面,它将适用于所有情况,假设您的元素在DOM中可见。

https://www.smashingmagazine.com/2009/08/taming-advanced-css-selectors/

对于你的给定元素,你可以用很多方式写

通用表格 tag[attribute='ATTRIBUTE_VALUE']

为您的例子

a[id='u_9_8']

a[class='_42ft _4jy0 rfloat _ohf _4jy4 _517h _51sy']

a[rel='async-post']

现在所有这些选择器仅在属性唯一时才有用。但是看看那篇文章,你可以使用很多技巧让CSS选择器为你工作。

答案 1 :(得分:0)

通过使用包含文本的xpath,您可以单击元素(下面是答案)

driver.findElement(By.xpath("//a[contains(text(),'Ileri')]")).click();

尝试一下,让我知道它是否适合你

答案 2 :(得分:0)

尝试以下任何一种代码。

使用id定位器

driver.findElement(By.id("u_9_8")).click();

使用xpath定位器

driver.findElement(By.xpath("//a[text()= 'İleri']").click();

说明: - 使用text方法和<a>代码。

driver.findElement(By.xpath("//a[@role='button'][text()= 'İleri']").click();

说明: - 使用role属性和text方法以及<a>代码。

答案 3 :(得分:0)

请在点击

之前添加等待条件

元素点击通过linkText: webDriver.findElement(By.linkText( “İleri”))上单击();

单击Via id的元素: webDriver.findElement(By.id( “u_9_8”))上单击();

单击Via cssSelector的元素: 1.webDriver.findElement(By.cssSelector( “._ 42ft._4jy0.rfloat._ohf._4jy4._517h._51sy”))上单击();

2.webDriver.findElement(By.cssSelector(“a [class ='_ 42ft _4jy0 rfloat _ohf _4jy4 _517h _51sy']”))。click();

单击Via javaScript的元素:         ((JavascriptExecutor)驱动程序).executeScript(“arguments [0] .click();”,webElement);

这里需要传递元素定位器而不是webElement。

答案 4 :(得分:0)

我们可以看到ID属性标签,因此我们可以使用ID“u_9_8”来点击按钮。 使用以下代码。

driver.findelement(By.id( “u_9_8”))上单击();

答案 5 :(得分:-1)

我认为你应该可以使用id

driver.findElement(By.id(&#34; u_9_8&#34))点击();

试一试