如何使用先进的Xpath方法定位元素?

问题描述:

我有以下的HTML代码片段:如何使用先进的Xpath方法定位元素?

<div class="pagging-box status-border status-border"> 
    <div class="left-container"> 
     <div> 
      <div class="clientid-hover"> 
      <h4>AAB52</h4> 
      <div class="hover-title" style="display: none;"> 
      <p>AAB52</p> 
      </div> 
      </div> 
     <div class="clientid-hover-state pl-info"> 
      <h4>CO</h4> 
     </div> 

     <div class="client-name-hover"> 
      <h4>Daniel-old Polar-old</h4> 
     </div> 
     <p class="contacting-client">Interview Partially Co..</p> 
    </div> 
    </div> 


    <div class="right-container"> 
     <div class="start-session pull-right"> 
     <a href="javascript:void(0)");" class="login-button"> 
      <i class="fa fa-2x fa-play-circle continue-session"></i> 
     </a>             
     </div> 
    </div> 
</div> 

我想找到<h4>AAB52</h4>文本的基础上,锚标签。我试图找到相同的兄弟姐妹一样以下xpath

//div[h4[contains(. , "AAB56")]]/following-sibling::div[1] 

xpath是不正确的,因为它是定位第二个div立即AAB52文本)

+0

“XPath”中应该没有类名,但只有文本“AAB52”,对吧? – Andersson

following-sibling上下文节点的父操作,所以你首先需要走到正确的上下文节点:

//h4[. = 'AAB52']/../../../following-sibling::div[1]/div/a 

或者您可以使用:

//div[./div/div/h4 = 'AAB52']/following-sibling::div[1]/div/a