You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过XPath筛选表格中优先级为P4的ID

如何用XPath选取表格中优先级为P4的ID?

我需要从表格里选出优先级为P4的ID,已经拿到表格第一行的页面代码。目前写了几个定位特定列的XPath,但没法写出符合需求的定位器,现有定位器如下:

  • //tbody/tr[*]/td[2]
  • //td[contains(text(),'P3')]

附上表格HTML代码:

<table _ngcontent-c17="" class="ticket-table table table-striped table-responsive">
                         <tbody _ngcontent-c17="" style="overflow-y: initial !important;">
                             <!----><tr _ngcontent-c17="">
                                 <td _ngcontent-c17="" style="width: 50px;">
                                     <div _ngcontent-c17="" class="checkbox-radios checkbox">
                                         <label _ngcontent-c17="">
                                             <input _ngcontent-c17="" id="tickets-block-select-ticket" name="selectTicket" type="checkbox" value="2062"><span class="checkbox-material"><span class="check"></span></span>
                                         </label>
                                     </div>
                                 </td>
                                 <!---->
                                 <!----><td _ngcontent-c17="" style="width: 5% !important;">
                                         INN-22
                                 </td>
                                 <td _ngcontent-c17="" style="text-align: left; width: 20%;">
                                     <a _ngcontent-c17="" class="locked-link" id="ticket-block-title" title="Title: Create weekly report 
                                         Description: " href="#/ticket/2062">
                                         <!---->
                                         <!----><span _ngcontent-c17="">[Inner] </span>
                                         <!---->
                                         Create weekly report
                                     </a>
                                 </td>
                                 <td _ngcontent-c17="">
                                      
                                 </td>
                                 <td _ngcontent-c17="">
                                     P4
                                 </td>
                                
      </tbody>
                </table>

解决方案

根据你要获取的ID类型,提供对应的XPath:

1. 获取工单编号(如INN-22)

//tbody/tr[td[normalize-space(text())='P4']]/td[2]

逻辑:先定位到包含P4文本的<td>所在的<tr>行,再选取该行的第2个<td>(工单编号列)。用normalize-space()是为了处理文本前后的空白字符,避免匹配失败。

2. 获取复选框的value值(如2062)

//tbody/tr[td[normalize-space(text())='P4']]/td[1]/input[@type='checkbox']

逻辑:找到对应P4的行后,定位到第一列的复选框元素,它的value属性就是工单ID。

3. 获取链接中的ID(对应href里的2062)

//tbody/tr[td[normalize-space(text())='P4']]/td[3]/a

逻辑:找到对应P4的行后,定位到第三列的链接元素,可通过读取href属性提取ID(如从#/ticket/2062中截取2062)。

内容的提问来源于stack exchange,提问作者Serhii

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 09:54:14