gpt4 book ai didi

java - CSSSelector 无法定位带有名称参数的元素

转载 作者:行者123 更新时间:2023-12-01 13:18:33 24 4
gpt4 key购买 nike

我有一个页面有 5 个按钮,我需要查找名称为“搜索”的按钮(前导和尾随空格)

当我尝试这两种方法时(仅出于测试目的打印名称):

System.out.println(driver.findElements(By.cssSelector("a.gxi-button")).get(1).getText());
System.out.println(driver.findElement(By.cssSelector("a.gxi-button[name=' Search ']")).getText());

对于第一个命令,其返回文本“Search”,但对于第二个命令,其抛出异常“org.openqa.selenium.NoSuchElementException”

有人可以指导我我在这里做错了什么吗?似乎前导空格和尾随空格在这里引起了问题。谁能指导如何处理这个问题?注意:我尝试过“搜索”和“搜索”,并且在两种情况下都得到相同的异常

最佳答案

您只需使用*=来执行部分匹配。

System.out.println(driver.findElement(By.cssSelector("a.gxi-button[name*='Search']")).getText());

或者使用 XPath(如果上面仍然不起作用)

driver.findElement(By.xpath(".//a[@class='gxi-button' and contains(@name, 'Search')]")).getText();

或者使用 XPath 的 normalize-space 函数

driver.findElement(By.xpath(".//a[@class='gxi-button' and normalize-space(@name)='Search']).getText();

关于java - CSSSelector 无法定位带有名称参数的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22249425/

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