开发者社区> 问答> 正文

nutch1.7 爬取网页parse问题?报错

执行命令  bin/nutch crawl urls -dir tmpData -threads 50 -depth 2
nutch-site.xml配置:

简略报错信息:

hadoop.log日志文件里的报错信息:

报错所指源码部分一:

报错所指源码部分二:


网上类似的关于此问题的帖子:
http://lucene.472066.n3.nabble.com/Nutch-1-7-Parser-java-lang-OutOfMemoryError-unable-to-create-new-native-thread-td4096365.html

没看懂。。。
求大神解决。跪求。。。!!!

展开
收起
爱吃鱼的程序员 2020-06-22 11:38:17 311 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    求解!


    这个问题有两个解决方案,一个是你加入topN参数,不超过2000就parse成功。

    第二个,修改源代码,重新编译。

    修改:src/java/org/apache/nutch/parse/ParseSegment.java

    定义个类成员

    <spanstyle="color:#333333;font-family:Menlo,'LiberationMono',Consolas,'CourierNew','andalemono','lucidaconsole',monospace;font-size:12px;line-height:18px;background-color:#F4FAFF;">privateParseUtilparseUtil=null;

    然后,在99行修改为

    <preclass="brush:java;toolbar:true;auto-links:false;">ParseResultparseResult=null;try{//parseResult=newParseUtil(getConf()).parse(content);if(parseUtil==null)parseUtil=newParseUtil(getConf());parseResult=parseUtil.parse(content);}catch(Exceptione){LOG.warn("Errorparsing:"+key+":"+StringUtils.stringifyException(e));return;}




    
    


    感谢,这问题已解决,源码已修改。

    2020-06-22 11:38:33
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载