我目前正在尝试为nutch 1.0编写自定义插件。该插件应该解析html数据并从文档中过滤掉相关信息。我有一个基本的插件工作,它扩展了HtmlParserResult对象,并在每次解析时执行。
我的问题目前面临两个问题:
我不太了解nutch解析的工作流程/ pipline。我没有在荷兰网站上找到有关这方面的信息。
我不明白DOM解析是如何完成的,我看到Nutch有一组DOM对象,HtmlParser插件做了一些DOM解析,但我还没弄清楚这是如何做得最好的。
答案 0 :(得分:1)
我记得为过去的作品制作了一个nutch HTML解析插件。我无法完全按照我的方式进行操作,但这里有基本要点。我们想要做以下事情:
我所做的只是找到html-parse插件类(我找不到实际的类名),并扩展它。然后覆盖解析功能。新函数应调用super
函数,然后可以遍历DOM树以查找您要查找的特殊数据。在我的情况下,我会寻找一个更好的标题,然后覆盖super
函数提出的值。
对于你的第二个问题,我不清楚你在问什么。我想你问的是当DOM形成不好时会发生什么?我将深入研究nutch代码(http://grepcode.com/snapshot/repo1.maven.org/maven2/org.apache.nutch/nutch/1.3/)并找出解析是如何完成的(我是确定他们使用库来做到这一点)。这应该告诉你更多关于事情是贪婪还是什么的。
霍勒,如果你有疑问。