尝试将Apache坚果与hadoop集成在一起。使用ant构建驻留在运行时文件夹中的apache-nutch-1.15.job文件后,尝试运行脚本bin / crawl但出现一些依赖项错误。 提取.job文件时,可以看到嵌入其中的所有必需依赖项。嵌入的依赖项版本也没有问题。
sh crawl -s <seed_file_directory_on_hdfs> <crawl_directory_on_hdfs> <num_rounds>
19/03/22 01:41:22 INFO mapreduce.Job: Running job:job_1547155431533_115992
19/03/22 01:41:34 INFO mapreduce.Job: Job job_1547155431533_115992 running
in uber mode : false
19/03/22 01:41:34 INFO mapreduce.Job: map 0% reduce 0%
19/03/22 01:41:45 INFO mapreduce.Job: Task Id :
attempt_1547155431533_115992_r_000001_0, Status : FAILED
Error: java.lang.RuntimeException: x point
org.apache.nutch.net.URLNormalizer not found.
at org.apache.nutch.net.URLNormalizers.<init>(URLNormalizers.java:146)
at org.apache.nutch.crawl.Generator$SelectorReducer.setup(Generator.java:378)
at org.apache.hadoop.mapreduce.Reducer.run(Reducer.java:168)
at org.apache.hadoop.mapred.ReduceTask.runNewReducer(ReduceTask.java:627)
at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:389)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1924)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
试图通过更改脚本在类路径路径中提供那些提取的jar,但并没有帮助,问题仍然存在。
答案 0 :(得分:0)
apache nutch的文档自2014年以来未更新。
要使用apache nutch来爬网网页,请使用ant来构建项目,并通过将所有本地路径替换为hdfs路径来执行上述提到的命令以爬网到本地文件系统(https://wiki.apache.org/nutch/NutchTutorial)(如果要爬网内容和转储到hdfs上)