如何使用一个元素使用xpath查找其他元素

时间:2018-01-23 06:32:43

标签: c# selenium xpath

您好我有一个如下所示的HTML页面:

<tr>
    <td class = "sdfgg" >
     <nobr> 3000 </nobr>
    </td>
    <td class = "retre" >
    <nobr> Comm error </nobr>
    </td>
</tr>
<tr>
    <td class ="fdhdf" >
    <nobr> Time: </nobr>
    </td>
    <td class ="csfds" >
    <nobr> 10:00PM </nobr>
    </td>
    <td class ="hdfh" >
    <nobr> Data code: </nobr>
    </td>
    <td class ="dfhfd" >
    <nobr> 456 </nobr>
    </td>
</tr>

我需要使用element&#34; 3000&#34;找到所有其他元素。这是事件ID。 我发现这个元素如下:

$"//nobr[text()='{eventId}']"这只是$"//nobr[text()='3000']"

我也可以通过在xpath中使用事件id找到Comm错误,如下所示:

$"//td/nobr[text()='{eventID}']/parent::td/following-sibling::td/nobr"

如何使用相同的事件ID找到剩余的元素?有人可以帮忙吗?使用&#39; 3000&#39;是:&#34;时间&#34;,&#34; 10:00 PM&#34; ,&#34;数据代码&#34;,&#34; 456&#34; 该页面是动态的,我不能使用class属性。

1 个答案:

答案 0 :(得分:1)

以下x路径可能会对您有所帮助。

查找元素通信错误

//td/nobr[normalize-space(text())='3000']/parent::td/following-sibling::td/nobr

寻找其他元素

//td/nobr[normalize-space(text())='3000']/../../following-sibling::tr[1]/td/nobr