Apache Nutch 仅索引部分页面内容
将使用 Apache Nutch v1.3
从网页中仅提取一些特定内容。检查了 parse-html 插件。似乎它使用 tagoup 或 nekohtml 规范每个 html 页面。这很好。我需要仅提取网页上 和
elemetns 内的文本。如果提取的文本保存到不同的字段中(例如
content_xxx
、content_yyy
),那就太好了。 我的问题是:我应该编写自己的插件还是可以使用某种标准方式来完成?
最好的方法是在规范化的网页上应用 XSLT 并得到结果。这可能吗?
Going to use Apache Nutch v1.3
to extract only some specific content from the webpages. Checked parse-html plugin. Seems it normalizes each html page using tagsoup or nekohtml. This is good. I need to extract only text inside <span class='xxx'>
and <span class='yyy'>
elemetns on the web-page. Would be great if extracted texts are saved into different fields (e.g. content_xxx
, content_yyy
).
My question is: should I write my own plugin or this could be done using some standard way?
The best way would be apply XSLT on normalized web-page and get the result. Is that possible?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
构建您自己的 ParsingFilter 和 IndexingFilter 很容易。 Nutch 为你提供了 DOM 文档,你只需要遍历并搜索你的 div 即可。然后,您只需将新字段添加到索引和架构中即可完成。
有一些关于如何执行此操作的示例:
http://wiki.apache.org/nutch/HowToMakeCustomSearch
http://sujitpal.blogspot.com/2009/07/nutch-custom-plugin-to-parse-and-add.html
祝你好运
Building your own ParsingFilter and IndexingFilter is easy. Nutch provides you with the DOM document, which you only need to traverse and search for your div. Then you simply add the new fields to your index and schema and your done.
There are some examples on how to do this:
http://wiki.apache.org/nutch/HowToMakeCustomSearch
http://sujitpal.blogspot.com/2009/07/nutch-custom-plugin-to-parse-and-add.html
Good luck
默认情况下,解析后内容是扁平的。
所以我不认为你可以做你想做的事,除非你可以在索引步骤中提取你的内容,即一旦内容被展平。
By default the content is flat after parsing.
So I don't think you can do what you want, unless you can get extract your content at the indexing step ie once content has been flattened.
除了编写自己的插件之外,您还可以使用这些自定义插件,这些插件可以配置为提取部分页面:
Instead of writing your own plugins, you can also use these custom plugins which can be configured to extract parts of pages: