从页面中提取内容

时间:2011-11-13 12:12:28

标签: html text-extraction

我需要识别页面中的内容 - 这样做http://www.alchemyapi.com/api/text/(我需要获取HTML,因此我无法使用此API)

我可以用什么逻辑来实现这个目标? (编码语言没关系)

这里我所做的(效果很好) - 需要更多修复......

  1. 查找页面中的大部分文字,以便没有破坏标记 - 忽略内联标记(span,b等等)
  2. 上升一级并计算破碎标签(br,p,div等)
  3. 上升到另一个级别并计算标签
  4. 将步骤2中的标签计数与步骤3进行比较
  5. 如果有很多不同,我们就在这里停止 - 如果不是,我们就转到第3步

3 个答案:

答案 0 :(得分:3)

寻找the Boilerpipe library。这是一个全面的解决方案。

使用Boilerpipe库,您可以将输出指定为HTML。因此,您仍然可以保留其HTML标记,从而获得主要内容(文章)。

答案 1 :(得分:2)

另一个好的选择是使用Goose

它允许比Boilerpipe(标题,内容)更多的字段(发布日期,作者,文章中的主要图像和更多内容)

答案 2 :(得分:0)

你需要一个解析器来导航DOM,在NuGet包中你可以找到一些有用的解析器工具,比如this