【问题标题】:Selenium click anchor link with class attributeSelenium单击具有类属性的锚链接
【发布时间】:2018-03-05 19:38:42
【问题描述】:

谁能帮助如何使用 selenium 点击下面的链接

<a class=”btn btn-primary btn-large” href="target-URL">Submit</a>

我尝试使用以下选项

  1. 链接文本
  2. 部分链接文本
  3. CSS 选择器
  4. 包含 - 检查 URL 文本的逻辑

【问题讨论】:

  • tony,给定的答案对你有用吗?

标签: selenium selenium-webdriver


【解决方案1】:

你可以试试:

driver.findElement(By.xpath("//a[contains@class,'btn '] and contains(@class, 'btn-large') and contains(text(), 'Submit')")).click()

【讨论】:

  • 谢谢。有效。但我改变了括号 driver.findElement(By.xpath("//a[contains(@class,'btn') and contains(@class, 'btn-large') and contains(text(), 'Submit') ]")).click();
【解决方案2】:

给出完整的 xpath

driver.findElement(By.xpath("html/body/a").click();

可以用标签名试试

driver.findElement(By.tagName("a").click();

【讨论】:

    【解决方案3】:

    理论上,这只是:

    driver.findElment(By.linkText("Submit")).click();
    

    但是,我很确定您已经尝试过了。检查元素是否在iframe/frame。如果是,则需要切换到它,然后才能找到链接元素:

    driver.switchTo().frame("frame_name_or_id");
    

    要切换回主上下文,请使用defaultContent()

    driver.switchTo().defaultContent();
    

    【讨论】:

    • 我试过它对我不起作用。我正在使用 Firefox 网络驱动程序
    【解决方案4】:

    试试下面的xpath:

    driver.findElement(By.xpath("//a[@href='target-URL']").click();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-28
      • 1970-01-01
      • 2021-08-29
      • 2021-03-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多