【问题标题】:Java Jsoup Print For LoopJava Jsoup 打印循环
【发布时间】:2020-03-04 10:15:02
【问题描述】:

我是 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);

        }
}

【问题讨论】:

    标签: java html list for-loop jsoup


    【解决方案1】:

    Document.select 返回org.jsoup.select.Elements,每个Element 是一个spanclass=title,因此您可以将标题存储在Elements 中并遍历它们,而不是调用.text()

    Elements titles = document.select("span[class=title]");
    
    for(Element title : titles) {
       System.out.println(title.text());            
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-17
      相关资源
      最近更新 更多