为父获取xpath

时间:2019-02-02 06:14:32

标签: selenium xpath

我是xpath的新手,我有这样的html结构:

 <div _ngcontent-c7="" class="new-dash hvr-fade ng-star-inserted" tabindex="0" ng-reflect-router-link="//service-aaaa" id="app109">
   <h5 _ngcontent-c7="" class="parent-highlight">
      <a _ngcontent-c7="" class="parent-highlight">
         <!--bindings={
            "ng-reflect-ng-if": "false"
            }--><br _ngcontent-c7="">
      </a>
      <img _ngcontent-c7="" alt="AppIcon" class="icon-active" width="65px" id="appIcon10" src="../assets/images/service_category_active.svg">
      <h5 _ngcontent-c7="" class="parent-highlight top-20 new-label" id="appNameText10">Service1234</h5>
   </h5>
</div>

我想选择父DIV具有的 h5.text = Service1234

请帮助。

2 个答案:

答案 0 :(得分:3)

//h5[text()="Service1234"]/ancestor::div[1]

读取:找到“ h5”元素,以相反的顺序找到其所有祖先“ div” -s(最接近的是第一个),然后返回第一个。

答案 1 :(得分:1)

如前所述,需要找到包含文本Service1234的h5的位置,然后向上移动以获取所需的div。

您也可以尝试像

 //h5[contains(text(),'Service1234')]/parent::h5/parent::div

查看此https://www.w3schools.com/xml/xpath_axes.asp