xpath определенный выбор с условием - PullRequest
0 голосов
/ 11 ноября 2011

это может быть просто, но я бы хотел выделить все в пределах <div class="rc-box-citations-body"> при условии, что оно должно принадлежать <div class="definitionBox" id="meaning-1-1">, тем самым однозначно идентифицируя его. Как я могу сделать это с xpath? Спасибо.

 <div class="definitionIndent">
  <div class="definitionNumber">1.a</div>
  <div class="definitionIndent">
    <div class="definitionBox" id="meaning-1-1">
      <span class="textmedium">
        <span class="stampNoBorder">text</span>
        <span class="definition">text</span>
      </span>
    </div>
    <div class="definitionBox">
      <div class="rc-box-citations">
        <div class="rc-box-citations-top">
          <span class="rc-citations-north-west">&#160;</span>
          <span class="rc-citations-north-east">&#160;</span>
        </div>
        <div class="rc-box-citations-body"><span class="citat">text</span> <a class="sourcepop" href="javascript:void(0);"><span class="source">text</span><span class="popup">text</span></a></div>
        <div class="rc-box-citations-bot">
          <span class="rc-citations-south-west">&#160;</span>
          <span class="rc-citations-south-east">&#160;</span>
        </div>
      </div>
    </div>
  </div>
</div>

1 Ответ

0 голосов
/ 11 ноября 2011

Если я немного изменю ваш xml и возьму при условии, что он должен принадлежать , что означает , который является потомком ...., тогда этот xpath работает

//div[@class='definitionBox'][@id='meaning-1-2']//div[@class='rc-box-citations-body']

XML - это

<?xml version="1.0" encoding="utf-16"?>
<div class="definitionIndent">
  <div class="definitionNumber">1.a</div>
  <div class="definitionIndent">
    <div class="definitionBox" id="meaning-1-1">
      <span class="textmedium">
        <span class="stampNoBorder">text</span>
        <span class="definition">text</span>
      </span>
    </div>
    <div class="definitionBox" id="meaning-1-2">
      <div class="rc-box-citations">
        <div class="rc-box-citations-top">
          <span class="rc-citations-north-west"></span>
          <span class="rc-citations-north-east"></span>
        </div>
        <div class="rc-box-citations-body">
          <span class="citation">text</span>
          <a class="sourcepop" href="javascript:void(0);">
            <span class="source">text</span>
            <span class="popup">text</span>
          </a>
        </div>
        <div class="rc-box-citations-bot">
          <span class="rc-citations-south-west"></span>
          <span class="rc-citations-south-east"></span>
        </div>
      </div>
    </div>
  </div>
</div>

Инструмент, который я использовал, XPathVisualizer:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...