Java Jsoup Print For Loop - PullRequest
       4

Java Jsoup Print For Loop

0 голосов
/ 07 ноября 2019

Я новичок в Java, а также Jsoup. Я успешно смог очистить данные сайта с помощью Jsoup. Тем не менее, в настоящее время я печатаю заголовки результатов поиска, и все они возвращаются в одной строке. Я хотел бы вложить результаты в цикл for, чтобы результаты заголовка поиска печатались в одной строке.

This is how the website is formatted:
<ul>
<li><span class ="title">Title 1<span></li>
<li><span class ="title">Title 2<span></li>
<li><span class ="title">Title 3<span></li>
</ul>

Мой код возвращается: Название 1 Название 2 Название 3

My Java code:
public class WebScrape {

        public static void main (String [] args) throws Exception {

            final Document document = Jsoup.connect("website.com").get();

            String searchResultsTitle = document.select("span[class=title]").text();
            System.out.println(searchResultsTitle);

        }
}

1 Ответ

1 голос
/ 07 ноября 2019

Document.select возвращает org.jsoup.select.Elements, каждый Element равен одному span с class=title, поэтому вместо вызова .text() вы можете хранить заголовки внутри Elements и выполнять их итерацию.

Elements titles = document.select("span[class=title]");

for(Element title : titles) {
   System.out.println(title.text());            
}
...