如何找到第一个搜索产品的 xpath
How to find xpath for first searched product
我在 html 页面上尝试了下面的 XPath.. 它显示了元素,但是当使用 selenium 代码时它显示错误 invalid selector: Unable to locate an element with the xpath expression
//div[@id='CardInstance1wPgwM8pHmoJmdnyjYOeWg']//child::div[2]//div[1]//div[1]//div[1]//div[2]//div[@class='a-section a-spacing-none a-spacing-top-small s-title-instructions-style']//span
请帮我找到第一个搜索产品的 xpath。
提前致谢。
可以直接使用
//li[starts-with(@class,'octopus-pc-item')]
这确实有 26 个条目,并且在 HTML 中不是唯一的,但是,findElement
将 return 第一个匹配的节点。
此外,您还可以像下面这样进行索引
(//li[starts-with(@class,'octopus-pc-item')])[1]
和 [2]
对于第二个产品等等...对于其他产品
执行如下点击
使用ExplicitWaits
wait = new WebDriverWait(driver, Duration.ofSeconds(30));
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//li[starts-with(@class,'octopus-pc-item')]"))).click();
使用findElement
Thread.sleep(3000);
driver.findElement(By.xpath("(//li[starts-with(@class,'octopus-pc-item')])[1]")).click();
我在 html 页面上尝试了下面的 XPath.. 它显示了元素,但是当使用 selenium 代码时它显示错误 invalid selector: Unable to locate an element with the xpath expression
//div[@id='CardInstance1wPgwM8pHmoJmdnyjYOeWg']//child::div[2]//div[1]//div[1]//div[1]//div[2]//div[@class='a-section a-spacing-none a-spacing-top-small s-title-instructions-style']//span
请帮我找到第一个搜索产品的 xpath。
提前致谢。
可以直接使用
//li[starts-with(@class,'octopus-pc-item')]
这确实有 26 个条目,并且在 HTML 中不是唯一的,但是,findElement
将 return 第一个匹配的节点。
此外,您还可以像下面这样进行索引
(//li[starts-with(@class,'octopus-pc-item')])[1]
和 [2]
对于第二个产品等等...对于其他产品
执行如下点击
使用
ExplicitWaits
wait = new WebDriverWait(driver, Duration.ofSeconds(30)); wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//li[starts-with(@class,'octopus-pc-item')]"))).click();
使用
findElement
Thread.sleep(3000); driver.findElement(By.xpath("(//li[starts-with(@class,'octopus-pc-item')])[1]")).click();