【发布时间】:2009-08-04 09:04:32
【问题描述】:
这不是一个真正的编程问题,更像是一个算法问题。
问题:查找 HTML 页面的“内容”部分。
“内容”是指包含人类看到的页面内容的 dom,没有噪音,只是“页面实际内容”。
我知道问题没有明确定义,但让我们继续......
例如在博客网站中,这通常很容易,当浏览到特定帖子时,通常在页面顶部有一些工具栏,可能是 LHS 上的一些导航元素,然后你有包含内容的 div。试图从 HTML 中找出这一点可能很棘手。然而幸运的是,大多数博客都有 RSS 提要,并且在此特定帖子的提要中,您会找到
新闻网站呢?在许多情况下,新闻网站都有 RSS,但并非总是如此。那么如何在新闻网站上找到内容呢? 更一般的网站呢?许多网页(当然不是全部)都有内容部分和其他部分。你能想出一个好的算法来找到“有趣”的部分而不是不那么有趣的部分吗?可能是变化的部分与不变的部分不同?
希望我已经说清楚了...谢谢!
【问题讨论】:
-
对于网络上的大多数页面,您可以很好地找到任何“有趣的部分”
-
这是一个很难回答的问题。如果很容易从噪音中识别出“有趣的内容”,那么每个人都会使用“噪音”过滤器,就像 Adblock 用于阻止广告一样。也就是说,通常情况下,用户看到的内容(基本上是去除标记和脚本逻辑的 html 文件的整个内容)可能包含“信息”,并且可以使用 htmlToText 转换器提取。 www.htmlparser.org 中的 StringBean 类可用于执行此操作(java)。
标签: html algorithm rss heuristics