從我到目前為止所做的閱讀來看,我認為這是不可能的,但如果有可能,這里是:
鑒于以下過度簡化的 HTML(基于從 CMS 生成的 HTML,因此無法真正控制它)
<div class="random">
<div class="random"> <-- This is the one I want
<div class="random">
<div class="random">
<span class="random">
<input id="experiment-randomnumbers-textinput-2">
</span>
</div>
</div>
</div>
</div>
我已經將以下 XPath 運算式組合在一起以獲得我想要的節點:
//input[contains(@id,'experiments') and contains(@id,'textinput-2')]/parent::span/parent::div/parent::div/parent::div
問題是,有沒有更簡潔的方法來做到這一點?我假設它不能在 CSS 中完成?
干杯
搶
uj5u.com熱心網友回復:
讓BASE_XPATH= //input[contains(@id,'experiments') and contains(@id,'textinput-2')]。
然后,如果目標是四個祖先,并且您不關心祖先元素的名稱:
BASE_XPATH/../../../..
如果祖先中有一個獨特的條件(在你的標記的省略部分):
BASE_XPATH/ancestor::*[ UNIQUE_PREDICATE ]
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/437609.html
