我需要从一个HTMl片段中提取所有文本。
示例:
输入:<p><div>how are</div> you doing?</p><p>I'm doing well</p>
输出:how are you doing? I'm doing well
我发现了一些问题,比如这个Text Extraction from HTML Java,它们处理类似的问题,但它们都只是删除<p>标记,但不删除内部元素。
最初,我尝试通过每个<p>标记的子标记列出它们的内容,并将它们的内容连接起来,还递归地检查每个外孙并连接其子级,等等,直到只有文本为止。问题是,有些文本没有被标签包围,只是简单明了。
我也尝试过Jsoup.parse(html).select("p").text(),但是我得到了"[]I'm doing well"作为输出。
这似乎是对web爬虫类程序的一种非常普遍的需求,但我找不到解决方案.
发布于 2014-06-15 00:14:47
试试这个:
Document doc = Jsoup.parse("<p><div>how are</div> you doing?</p><p>I'm doing well</p>");
String body = doc.body().text();https://stackoverflow.com/questions/24225412
复制相似问题