Nutch - 解析自定义 HTML 元素
Nutch - parse custom HTML elements
我正在尝试对我正在抓取的页面的特定部分进行抓取和索引(使用 Solr)。
到目前为止,使用所有默认配置,我正在对我想要的页面进行爬网和索引,但在 Solr 中我只有 2 个字段,标题和内容,其中包含我页面的文本,但不完全是文本我想要的。
我想要实现的是拥有一个包含特定 div 内容的新字段。
<div class="myDiv"> Content I want to index </div>
到目前为止我发现的 Extractor Plugin 似乎是我想要的。
按照说明操作后,我无法解析数据,因为我收到以下错误并且我不明白哪里出了问题。
我正在使用 Nutch 1.15
java.lang.Exception: java.lang.LinkageError: loader constraint violation: when resolving method "org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()Lorg/slf4j/ILoggerFactory;" the class loader (instance of org/apache/nutch/plugin/PluginClassLoader) of the current class, org/slf4j/LoggerFactory, and the class loader (instance of sun/misc/Launcher$AppClassLoader) for the method's defining class, org/slf4j/impl/StaticLoggerBinder, have different Class objects for the type org/slf4j/ILoggerFactory used in the signature
at org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:462)
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:522)
似乎使用的slf4j-api是一个旧版本,与Nutch使用的版本不匹配。至少,我是这么理解的。
为了解决这个问题,我简单地注释掉了 /plugins/extractor/plugin.xml
中的库
删除此行:<library name="slf4j-api-1.7.5.jar"/>
我正在尝试对我正在抓取的页面的特定部分进行抓取和索引(使用 Solr)。
到目前为止,使用所有默认配置,我正在对我想要的页面进行爬网和索引,但在 Solr 中我只有 2 个字段,标题和内容,其中包含我页面的文本,但不完全是文本我想要的。
我想要实现的是拥有一个包含特定 div 内容的新字段。
<div class="myDiv"> Content I want to index </div>
到目前为止我发现的 Extractor Plugin 似乎是我想要的。
按照说明操作后,我无法解析数据,因为我收到以下错误并且我不明白哪里出了问题。
我正在使用 Nutch 1.15
java.lang.Exception: java.lang.LinkageError: loader constraint violation: when resolving method "org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()Lorg/slf4j/ILoggerFactory;" the class loader (instance of org/apache/nutch/plugin/PluginClassLoader) of the current class, org/slf4j/LoggerFactory, and the class loader (instance of sun/misc/Launcher$AppClassLoader) for the method's defining class, org/slf4j/impl/StaticLoggerBinder, have different Class objects for the type org/slf4j/ILoggerFactory used in the signature
at org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:462)
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:522)
似乎使用的slf4j-api是一个旧版本,与Nutch使用的版本不匹配。至少,我是这么理解的。
为了解决这个问题,我简单地注释掉了 /plugins/extractor/plugin.xml
删除此行:<library name="slf4j-api-1.7.5.jar"/>