【问题标题】:How can I get all div elements with jsoup?如何使用 jsoup 获取所有 div 元素?
【发布时间】:2014-10-02 23:24:04
【问题描述】:

我正在学习如何使用 jsoup。我一开始以为 jsoup 和 jquery 很像,其实不然。

我想将这个 html 正文提取到 div 的元素中。

<html>
<head></head>
    <body>
            <div>
                <h1>Title</h1>
            </div>
            <div>
                <img src="/xx.jpg" />
            </div>
            <div>
                <p>Paragraph 1</p>
                <p>Paragraph 2</p>
            </div>
            <div>
                <h2><b>End</b></h2>
            </div>
        </body>
</html>

我正在使用此代码:

Document doc = Jsoup.parse(htmlString);
Elements divs = doc.select("div");

但它会返回所有的 div。我希望元素像这样返回:

divs.get(0).toString(); // "<h1>Title</h1>"
divs.get(1).toString(); // "<img src="/xx.jpg" />"
divs.get(2).toString(); // "<p>Paragraph 1</p><p>Paragraph 2</p>"
divs.get(3).toString(); // "<h2><b>End</b></h2>"

请帮助我使用 jsoup 获取元素的 div 并按上述方式返回?

【问题讨论】:

    标签: java html jsoup


    【解决方案1】:

    使用 .html() 将检索内部 html。

    Document doc = Jsoup.parse(htmlString);
    Elements divs = doc.select("div");
    //divs.get(0).html();
    for(Element elem : divs){
      System.out.println(elem.html()); //get all elements inside div
    }
    

    如果你想包含 div,你可以使用.outerHtml()

    【讨论】:

      【解决方案2】:

      执行 divs.get(0).html();

      它会给你标签的内部html

      【讨论】:

        猜你喜欢
        • 2018-05-16
        • 1970-01-01
        • 2023-04-07
        • 1970-01-01
        • 2020-10-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多