0
我有这样的一个表:选择特定的列标题下的所有行(可变列标题)
<table>
<tr class="header">
<td>
Col1
</td>
<td>
Col2
</td>
<td>
Col3
</td>
<td>
Col4
</td>
</tr>
<tr class="rowOdd">
<td>
Value1
</td>
<td>
Value2
</td>
<td>
Value3
</td>
<td>
Value4
</td>
</tr>
<tr class="rowEven">
<td>
Value1
</td>
<td>
Value2
</td>
<td>
Value3
</td>
<td>
Value4
</td>
</tr>
</table>
从本质上讲,我想要做的是选择所有使用XPath指定的列标题下的行。列标题实际上是从“5XS”到“6XL”的衬衫尺寸。诀窍是每个表的列数是不一样的。一些有10列,其他有5列或更少(即可用衬衫尺寸较少)。但标题名称是固定的名称:item_name,5xs,4xs等等。只是并非所有的尺寸都在每张桌子上都有。所以我必须编写一个xpath,以便它搜索特定的标题名称(或衬衫大小)并获取该特定标题名称下的所有行。我曾尝试这个代码,它似乎工作:
*[count(../../tr/td[@class='header'][.='5xs']/preceding-sibling::*)+1]
不过,我的问题是,如果头“5xs”是不存在的,我当前正在处理的表,我得到默认为列1的值(ITEM_NAME )。如果我正在查找的特定标题名称不存在于我正在查看的当前表格中,是否有办法让空白或根本不选择行?
谢谢!
这是一个辉煌的建议,但标题的类名对于每个标题不是唯一的。什么是他们独特的内容或标题单元格中的文字。 –
所以你想抓住的所有值?如果是这样,这应该做的工作:“//表// td” –