用nutch 1.0和自定义插件解析html数据
问题描述:
我正在尝试为nutch 1.0编写一个自定义插件。这个插件应该解析html数据并从文档中滤除相关信息。我有一个基本的插件工作,它扩展了HtmlParserResult对象,并在每次执行解析时执行。用nutch 1.0和自定义插件解析html数据
我的问题是两个面临此刻:
我不明白Nutch的解析不够好,工作流程/ pipline。我在nutch网站上找不到关于此的信息。
我不明白DOM解析是如何完成的,我看到Nutch有一组DOM对象,并且HtmlParser插件做了一些DOM解析,但我还没有想出如何做到最好。
答
我记得为过去的工作制作了一个nutch HTML解析插件。我无法得到我是如何做到的,但这里有一些基本点。我们要做到以下几点:
- 解析HTML页面,但有条件使用H1标签或标签与某一类的页面标题,而不是实际的// HTML /头/标题
- 有一些有时在页面上的特殊数据片段(即选择了哪个标签,这会告诉我们这是零售客户,银行客户还是公司客户)。
- 等
我所做的只是找到HTML的解析插件类(我无法找到实际的类名),并扩展它。然后重写解析函数。新函数应该调用super
函数,然后可以遍历DOM树来查找要查找的特殊数据。在我的情况下,我会寻找更好的标题,然后覆盖super
函数提出的值。
对于第二个问题,我不清楚你在问什么。我认为你问的是什么时,DOM不正常形成?我只想深入研究nutch代码(http://grepcode.com/snapshot/repo1.maven.org/maven2/org.apache.nutch/nutch/1.3/),并了解解析是如何完成的(我是确定他们使用库来做到这一点)。那应该告诉你更多关于事情是否贪婪的事情,或者是什么。
霍勒如果您有任何疑问。