Как получить вложенный элемент с помощью jSoup? - PullRequest
0 голосов
/ 28 августа 2018

Я пытаюсь получить доступ к классу гнезда gwt-HTML из http://folkets -lexikon.csc.kth.se / folkets / # lookup & dricker & 0 , который содержит следующий текст:

Бойнингар: драк, друкит, Дрик, Дрикка, Дриккер

Немного быстрой, актуальной информации о вышеуказанном сайте: это англо-шведский словарь, где мне все, что мне нужно, это просто немного модифицировать URL каждый раз, а затем взять текст, следующий после слова Böjningar , в этом случае я получу «драк, дружок, Дрик, Дрикка, Дриккер»

Вот что я пробовал до сих пор

Document document = Jsoup.connect("http://folkets-lexikon.csc.kth.se/folkets/#lookup&dricker&0").get();
Elements elements = document.getElementsByClass("gwt-HTML");
if(!elements.isEmpty()){
    for(Element element: elements){
        System.out.println(element.data());
    }
} else {
    System.out.println("***********NO RESULTS !!!");
}

С помощью приведенного выше кода я продолжаю вводить оператор else, хотя, когда я проверяю элементы сайта, я вижу

<div class="gwt-HTML">Böjningar: drack, druckit, drick, dricka, dricker</div>

Как я могу получить доступ к этому элементу?

Вот скриншот с данными enter image description here

1 Ответ

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

Используйте select("div.gwt-HTML") вместо getElementsByClass("gwt-HTML")

Document document = Jsoup.connect("http://folkets-lexikon.csc.kth.se/folkets/#lookup&dricker&0").get();
Elements elements = document.select("div.gwt-HTML");
if(!elements.isEmpty()){
    for(Element element: elements){
        System.out.println(element.data());
    }
} else {
    System.out.println("***********NO RESULTS !!!");
}
...