java - Selenium WebDriver - Java - 单击按钮

标签 java selenium selenium-webdriver webdriver

我正在尝试单击一些按钮,并使用 twitch 上的“关注”按钮作为示例。

我使用 Selenium IDE 尝试获取按钮的 xpath。我得到的 xpath 是: //span[@id='ember637']/a/span

如果我转到 FireFox 并复制按钮的唯一选择器,我会得到: .js-follow > span:nth-child(1)

我已经在java程序中尝试过,但它们不起作用。当我使用 //span[.. xpath 时,出现以下错误:

"Unable to locate a node using //span[@id='ember637']/a/span"

编辑:

带有我要单击的按钮(“关注”按钮)的网站示例: http://www.twitch.tv/mradder89/profile/

我使用的 Selenium jar 文件是“selenium-server-standalone-2.35.0.jar”

我收到的错误是

"Exception in thread "main" org.openqa.selenium.NoSuchElementException: Unable to locate a node using //span[@id='ember637']/a/span"

编辑2:

我下载了 PhantomJSDriver exe 文件(phantomjs.exe)并正在尝试。这不起作用... 我没有收到像以前一样的错误消息(“无法找到节点...”错误)。

代码如下:http://pastebin.com/GzvubMZr

最佳答案

使用 PhantomJSDriver,尝试不同的定位器。如果有任何异常,则发布异常,否则发布元素的信息,例如位置、文字等

driver.findElement(By.xpath("//*[contains(@class, 'profile-actions')]//span[text()='Follow']")).click();
driver.findElement(By.cssSelector(".profile-actions .primary_button > span")).click();

关于java - Selenium WebDriver - Java - 单击按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19084041/

相关文章:

Java 到 Coldfusion SVG 到 PDF

c# - 如何使用 Selenium WebDriver C# 从下拉列表中选择一个选项?

c# - 无法从下拉列表中选择元素

java - 作为 javassist 注释成员的注释数组

java - 如何在 switch case 语句中匹配多个输入值?

php - 无法使用带有 php 的 Selenium 将 cookie 添加到页面

selenium - 为 selenium python 安装 "pip undetected-chromedriver"

python - 无法通过在 python 中使用 xpath 和 selenium 来单击元素

java - Seam Framework 中的非法状态异常

python - 如何在Python中读取Excel表格中的数据?