【发布时间】:2015-10-13 17:12:53
【问题描述】:
我无法在表格中找到文本值,这是表格的示例屏幕截图。
当我尝试获取火路时,它会显示一个动态 id:
.//*[@id='UID18-33316107000078976-1444640760832Display']/tbody/tr[1]/td[6]
我需要获取表格示例“3004”中的确切值。我尝试使用这个 xpath contains 但仍然没有运气。
driver.findElement(By.xpath(//td[contains(.,'3004')]));
有没有办法提取这些表中的值? 这是表格的元素。
注意:尝试使用 FirePath 突出显示的元素输出是:
.//*[@id='tdDataDiv']
所有选定行的 id 相同。它似乎也不起作用。
更新:@alecxe
这是我尝试在 xpath 上使用 .getText() 时显示的错误。所以问题是我在获取元素的值时有一个空指针。您可以找到 xpath,但我无法从 xpath 获取文本。
感谢所有愿意调查此事的人。如果需要更多信息,请通知我谢谢!
【问题讨论】:
-
具有值的不是
<td>,而是<td>中的<div>,在这种情况下具有id=tdDataDiv。由于 id 在页面中应该是唯一的,因此您可以使用以下 XPath://div[@id='tdDataDiv']. -
@t0mppa 嗯是的,我认为你是正确的,但我需要得到的是 id=tdDataDiv 中的值,即“3004”。
标签: java xpath selenium-webdriver webdriver html-table