[英]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.