title: Selecting the second child of an ancestor with XPath
body: <p>I need to fetch some text from a HTML page. I'm trying to avoid relying on tag names or classes, because they will change.</p>
  <p>Starting from an element that contains the text &quot;Hello&quot;, I'm looking for the text stored in the grandparent's second element.</p>
  <pre><code>&lt;...&gt;
    &lt;...&gt;
      &lt;...&gt;
        Hello
      &lt;/...&gt;
    &lt;/..&gt;
    &lt;...&gt;       &lt;!-- UNCLE --&gt;
      &lt;...&gt;
        World   &lt;!-- I need this! --&gt;
      &lt;/...&gt;
    &lt;...&gt;
  &lt;/...&gt;
  </code></pre>
  <p>I tried fetching the element UNCLE using XPath, with: <code>//*[text()==&quot;Hello&quot;)]/../..[2]</code>, but it doesn't work. It seems that [] cannot be applied to <code>..</code>?</p>
  <p>How can I fetch the second child of a node's grandparent?</p>
  <p>Are there better ways to retrieve the text I'm looking for, instead of a similar XPath query and document.evaluate?</p>