簡體   English   中英

使用 jsoup 將 HTML 解析為格式化的純文本

[英]Parsing HTML into formatted plaintext using jsoup

我正在研究一個 maven 項目,該項目允許我解析來自網站的 html 數據。 我能夠使用下面的代碼解析它:

public void parseData(){
        String url = "http://stackoverflow.com/help/on-topic";
        try {
            Document doc = Jsoup.connect(url).get();
            Element essay = doc.select("div.col-section").first();
            String essayText = essay.text();
            jTextAreaAdem.setText(essayText);


        } catch (IOException ex) {
            Logger.getLogger(formAdem.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

到目前為止,我沒有任何問題。 我可以解析html數據。 我正在使用 jsoup 中的 select 方法並使用“div.col-section”檢索數據,這意味着我正在尋找類為 col-section 的 div 元素。 我想在 textarea 中打印數據。 盡管網站上的真實數據不止一個段落,但我得到的結果是一個巨大的段落。 那么如何像網站上的一樣解析數據呢?

它沒有格式化的原因是格式化在 HTML 中——帶有<p><ol>標簽等。在塊元素上調用.text()會丟失該格式。

Jsoup 有一個示例HTML 到純文本轉換器,您可以通過提供 div 元素作為焦點來適應您的需要。

或者,您可以只選擇"div.col-section > *" ,並遍歷每個元素,並用換行符打印出該文本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM