将两个节点作为单个元素返回

时间:2014-10-24 13:02:40

标签: html selenium xpath

<table>
    <tr class="offMiddle bordertop">
        <td></td>
        <td><strong>12:00</strong>
        </td>
        <td>02:00</td>
        <td><div><input type="radio" value="T"></div></td>
    </tr>
    <div>should be ignored</div>
    <tr class="offMiddle">
        <td></td>
        <td>17:00</td>
        <td><strong>12:30</strong>
        </td>
    </tr>


    <tr class="offMiddle bordertop">
        <td></td>
        <td><strong>19:00</strong>
        </td>
        <td>13:30</td>
        <td><div><input type="radio" value="T"></div></td>
    </tr>
    <div>should be ignored</div>
        <tr class="offMiddle">
        <td></td>
        <td><strong>09:15</strong>
        </td>
        <td>02:00</td>
    </tr>


    <tr class="offMiddle bordertop">
        <td></td>
        <td><strong>16:00</strong>
        </td>
        <td>02:50</td>
        <td><div><input type="radio" value="T"></div></td>
    </tr>
    <tr class="offMiddle">
        <td></td>
        <td><strong>12:00</strong>
        </td>
        <td>02:00</td>
    </tr>
    <div>should be ignored</div>
</table>

我有一个包含6行的表格。我想将第一行和第二行作为单个元素返回,以及第三行和第四行,第五行和第六行。理想情况下,我想将这些部分中的每一部分作为包含所选两行的元素返回。

目前我有:

//table/tr[contains(@class, 'offMiddle bordertop')] | //table/tr[contains(@class, 'offMiddle bordertop')]/following-sibling::tr[contains(@class, 'offMiddle')]

选择下面的表行而不包含应忽略的div:

    <tr class="offMiddle bordertop">
        <td></td>
        <td><strong>12:00</strong>
        </td>
        <td>02:00</td>
        <td><div><input type="radio" value="T"></div></td>
    </tr>
    <tr class="offMiddle">
        <td></td>
        <td>17:00</td>
        <td><strong>12:30</strong>
        </td>
    </tr>
    <tr class="offMiddle bordertop">
        <td></td>
        <td><strong>19:00</strong>
        </td>
        <td>13:30</td>
        <td><div><input type="radio" value="T"></div></td>
    </tr>
        <tr class="offMiddle">
        <td></td>
        <td><strong>09:15</strong>
        </td>
        <td>02:00</td>
    </tr>
    <tr class="offMiddle bordertop">
        <td></td>
        <td><strong>16:00</strong>
        </td>
        <td>02:50</td>
        <td><div><input type="radio" value="T"></div></td>
    </tr>
    <tr class="offMiddle">
        <td></td>
        <td><strong>12:00</strong>
        </td>
        <td>02:00</td>
    </tr>

但是我需要返回类似[(1, 2), (3, 4), (5, 6)]之类的内容。我希望能够使用类似// tr / td / strong / text()的表达式从每个分组元素中提取数据。

这可能吗?

0 个答案:

没有答案