我在选择要在Selenium中读取的表格时遇到问题。
我有一个表中'thead'里面有两个'tr'元素,我需要找到一种方法来忽略其中的第一个。
下面是代码:Selenium XPath - 忽略表格中的元素
<table class="noselect">
<thead>
<tr>
<th> </th>
<th class="number IOL">Interest Rates</th>
<th class="number IO">
</tr>
<tr>
<th>Description</th>
<th class="number">Value</th>
<th class="number">Percentage</th>
</tr>
</thead>
<tbody>
<tr>
<tr class="">
<tr class="">
<tr class="">
<tr>
<tr>
</tbody>
</table>
使用Selenium我会要求它记录了一定的行和列的值。然后,我们将查看我将给它的Table元素(希望使用可以在这种情况下工作的XPath),查看thead并记录每列的标题。在这种情况下,我一直在努力,事实上,在这个表的顶部有一个额外的'tr'阻碍了这个过程。
这是这个元素如何目前使用:
[TableAlias("Detailed table")]
protected virtual IWebElement DetailedTable()
{
return Driver.FindElement(By.XPath("//table[@class='noselect']"));
}
我已经尝试了许多不同的方式,我不能去上班,但什么已经去为我的要点是:
//table[@class='noselect movements']/thead/tr/th[not(text()='Interest Rates')]/../../..
在这里,我坚持去'tr'元素,告诉它不要使用它然后退出,但选择它再次 - 甚至不会取消选择整个'tr'元素。它似乎没有帮助(对我),我试图删除的'tr'元素是空白的,没有类或定义的功能。
除了'thead'中的第一个'tr'元素是否有一种方法可以选择整个表作为一个元素?
你是什么意思与“选择整个表”?之后你想怎么办?这对于回答你的问题很重要,所以更好地描述你真正想要达到的目标(以及你已经尝试过的xpath在哪里?) – drkthng
使用Selenium我会要求它记录某一行和列的值。然后,我们将查看我将给它的Table元素(希望使用可以在这种情况下工作的XPath),查看thead并记录每列的标题。在这种情况下,我一直在努力,事实上,在这个表的顶部有一个额外的'tr'阻碍了这个过程。我将添加这个和我已经尝试使用的XPath的 – StevieBruce