2015-08-23 3 views
0

У меня есть HTML, и я пытаюсь получить ссылку, и я знаю несколько качеств, которые у меня есть, так что я могу найти их легко, но не хочу также получить тег <h2 calss='locs'> выше ссылку у меня есть. Таким образом, HTML может выглядеть следующим образомJsoup - Get Parent

<html> 
    <body> 
     <h2 class = 'locs'>text</h2> 
     <p> 
      <a link and stuff...> 
     </p> 
     <h2 class = 'locs'>foo</h2> 
     <p> 
      <a another link and stuff...> 
     </p> 
    </body> 
</html> 

Но <h2> не всегда только первый родитель <a> так есть способ для поиска, которая приходит перед ссылкой?

Спасибо за помощь

+0

@ speng10 Я не могу понять ваш вопрос. Можете ли вы переписать свой вопрос? Английский язык искажен. Возможно, разобьем его на короткие сроки. Будьте конкретны в деталях и примерах. –

ответ

0

Я не совсем уверен, что вы просите, но это то, что я предполагаю: Вы хотите, чтобы первый a элемента после h2 элемента класса locs.

Чтобы сделать это, вы можете # т использовать метод parent(), так как a элементы родители кажутся p элементы, которые в свою очередь, братья и сестры (не дети) в h2.locs элементов. Вот что я хотел бы сделать:

Elements as = doc.select("h2.locs + p>a"); 

Объяснение:

  • h2.locs ищет h2 класса с элементами, входящих оргкомитетами
  • A + B выглядит для B, который должен быть прямой родственным к предыдущему А.
  • p>a ищет a элементов, которые являются детьми p