jsoup получить следующий элемент div - PullRequest
0 голосов
/ 28 августа 2018

Как я могу получить первый div после тега h1.

HTML:

<h1> Shalom </h1>
<b> Tov </b>
<div>  ddd  </div> <! I need to take this div > 

Мой java-код java

Elements apresh =  doc.select("h1 ~ div"); 
String csdsdsdf =    apresh.html(); 
System.out.printf(csdsdsdf);

Но это не работает. Вы можете мне помочь?

Ответы [ 2 ]

0 голосов
/ 28 августа 2018

Я нашел два способа сделать это:

    Document doc = Jsoup.parse("<h1> Shalom </h1>" +
                               "<b> Tov </b>" + 
                               "<div>  ddd  </div>");

    // 1 Select DIV which is after B which is after H1.
    System.out.println(doc.select("h1 + b + div"));

    // 2 More flexible solution which involves going one level up to parent 
    //   and then selecting the first DIV.
    System.out.println(doc.select("h1").first().parent().select("div").first());
0 голосов
/ 28 августа 2018

Из того, что вы упомянули в комментариях, я полагаю, что вы пытаетесь извлечь первый элемент из соответствующих элементов на основе вашего селектора "h1 ~ div".

Вы можете использовать приведенный ниже метод из API.

public Element first () : Получить первый соответствующий элемент.

...