gpt4 book ai didi

java - 如何找到与selenium的链接?

转载 作者:太空宇宙 更新时间:2023-11-04 07:26:08 25 4
gpt4 key购买 nike

问题是:在以下场景中如何找到与 Selenium JAVA API 的链接:

  • 该链接没有 ID
  • 有很多链接,只是 href 有所不同
  • 我知道有关我要点击的链接的 href(子字符串)的一些独特信息
  • 所有链接都有相同的文字

我写了这个方法,我尝试使用xpaths匹配功能:

public void clickOnLink(String sub_hrefText){
String xpath = String.format("a[matches(@href,'%s')]",sub_hrefText);
browser.findElements(By.xpath(xpath)).get(0).click();
}

但我有一个异常(exception):

InvalidSelectorException

最佳答案

你说

I know some unique information about (substring) the href of the link I want to click on

这样您就可以使用 XPath 1.0 函数 contains(haystack,needle)(请参阅 W3C XPath spec)。

您还需要在表达式开头使用 // 或更安全的 -- .// 来选择文档树中更下方的上下文节点(在您的情况下为根节点)的后代 a 元素,而不仅仅是直接子 a 节点。

这给了我们:

public void clickOnLink(String sub_hrefText){
String xpath = String.format(".//a[contains(@href, '%s')]",sub_hrefText);
browser.findElements(By.xpath(xpath)).get(0).click();
}

关于java - 如何找到与selenium的链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18515988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com