首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简汤:把文字提取出来,就像人类所读的一样。

简汤:把文字提取出来,就像人类所读的一样。
EN

Stack Overflow用户
提问于 2014-06-15 00:04:47
回答 1查看 176关注 0票数 0

我需要从一个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爬虫类程序的一种非常普遍的需求,但我找不到解决方案.

EN

回答 1

Stack Overflow用户

发布于 2014-06-15 00:14:47

试试这个:

代码语言:javascript
复制
Document doc = Jsoup.parse("<p><div>how are</div> you doing?</p><p>I'm doing well</p>");
String body = doc.body().text();
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24225412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档