如何修复xpath?

问题描述 投票:0回答:4

这是我必须使用的xpath:“ // * [@ id =” zona-mijloc“] / div / table / tbody / tr1/ td1/ label / kbd”。

String id = driver.findElement(By.xpath("//*[@id=\"zona-mijloc\"]div/table/tr[1]/td[1]/label/kbd")).getText();

That's the html code

java selenium
4个回答
0
投票

我看不到XPath中引用的元素的所有HTML,但是您可以尝试这样简化路径:

String id = driver.findElement(By.xpath("//table/tr[1]/td[1]/label/kbd")).getText();

如果这对您不起作用,建议您发布整页HTML,以便我们为您提供更好的帮助。


0
投票

Xpath-.//label(@for='id16401488')/kbd假定html源代码中没有与xpath相同的其他匹配项。如果是这样,请使用所需的/kbd的索引。


0
投票

请尝试使用此xpath,让我知道它的运行方式

//*[@id="zona-mijloc"]//div/table/tbody/tr/td/label/kbd

0
投票

您可以选择最后一个使用last()作为索引的元素:

String id = driver.findElement(By.xpath("//*[@id='zona-mijloc']//kbd[last()]")).getText();

要在Selenium中获取文本,请确保该元素可见。

© www.soinside.com 2019 - 2024. All rights reserved.