假设我有 X 文档,什么算法/库/tika config/nekohtml 过滤器会告诉我哪些是“文章”,哪些不是,对于那些给我文章文本的人(即没有其他周围的文本)。
我所说的一篇文章是指包含至少一个段落的一大堆结构化文本,我认为大多数人类读者都可以过滤掉这些内容。
我想到的最简单的方法是确保 doclength > Y,例如,其中 Y 是 350 个单词。但这不是最可靠的方法,因为例如可能有很长的列表,并且它没有给我文章文本。寻找
标签,不够好。
假设我有 X 文档,什么算法/库/tika config/nekohtml 过滤器会告诉我哪些是“文章”,哪些不是,对于那些给我文章文本的人(即没有其他周围的文本)。
我所说的一篇文章是指包含至少一个段落的一大堆结构化文本,我认为大多数人类读者都可以过滤掉这些内容。
我想到的最简单的方法是确保 doclength > Y,例如,其中 Y 是 350 个单词。但这不是最可靠的方法,因为例如可能有很长的列表,并且它没有给我文章文本。寻找
标签,不够好。
您可以使用Boilerpipe从页面中提取文本,然后根据您的启发式方法(即文章长度)自行决定它是否是一篇文章。恐怕您的解决方案无论如何都行不通。断开连接的项目列表仍然看起来像句子列表。您需要“理解”内容。
根据吞吐量、延迟、连接性和其他非技术因素(例如金钱)等因素,如果这是人类可以轻松做到但对计算机来说很难做到的事情,您可能需要考虑使用Amazon Mechanical Turk来定义 HIT 以讲述一篇文章其他类型的文本。有一个API可以将 HIT 结果与您的代码集成。