运行heritrix1.14.4报错 thread-10 org.archive.util... (转载)

             运行heritrix1.14.4报错 thread-10 org.archive.util... (转载)
孙中熙 收藏于 2010-12-13 阅读数:  公众公开 原文来源

Heritrix取消robots.txt

文章分类:Java编程

      Robots.txt是一种用于限制网络爬虫的文件,如果在构建网站时,在站点内放置一个Robots.txt文件,在其中可以声明不希望搜索引擎访问的部分。然而,这也是Heritrix爬虫在抓取网页时花费过多的时间去判断该Robots.txt文件是否存在。。。好在这个协议本身是一种附加协议,完全可以不遵守。

    在Heritrix的org.archive.crawler.prefetch.PreconditionEnforcer类中定义了获取Robots.txt的方法,我的选择是无论Robots.txt是否存在,都返回不存在,修改方法如下

Java代码 复制代码
  1. private boolean considerRobotsPreconditions(CrawlURI curi) {   
  2.     //此处为提高抓取效率,将忽略Robots.txt协议   
  3.     return false;     }
 
 运行heritrix1.14.4报错 thread-10 org.archive.util.ArchiveUtils.() TLD list unavailable 收藏
运行heritrix1.14.4报错 thread-10 org.archive.util.ArchiveUtils.<clinit>() TLD list unavailable
最近需要用到heritrix做一个需求,下来研究了一下。
根据网上的文章在eclipse中启动报了下面的错误
10:02:59.968 EVENT  Starting Jetty/4.2.23
10:03:00.765 EVENT  Started WebApplicationContext[/,Heritrix Console]
10:03:00.859 EVENT  The scratchDir you specified: F:\project3.5\heritrix\target\jsp-compiled-development is unusable.
10:03:01.000 EVENT  Started SocketListener on 127.0.0.1:8088
10:03:01.000 EVENT  Started org.mortbay.jetty.Server@1f6ba0f
2010-07-10 10:03:01.250 严重 thread-10 org.archive.util.ArchiveUtils.<clinit>() TLD list unavailable
java.lang.NullPointerException
 at java.io.Reader.<init>(Unknown Source)
 at java.io.InputStreamReader.<init>(Unknown Source)
 at org.archive.util.ArchiveUtils.<clinit>(ArchiveUtils.java:759)
 at org.archive.crawler.settings.CrawlSettingsSAXHandler$DateHandler.endElement(CrawlSettingsSAXHandler.java:385)
 at org.archive.crawler.settings.CrawlSettingsSAXHandler.endElement(CrawlSettingsSAXHandler.java:248)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
 at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
 at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
 at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
 at org.archive.crawler.settings.XMLSettingsHandler.readSettingsObject(XMLSettingsHandler.java:298)
 at org.archive.crawler.settings.XMLSettingsHandler.readSettingsObject(XMLSettingsHandler.java:339)
 at org.archive.crawler.settings.SettingsHandler.initialize(SettingsHandler.java:130)
 at org.archive.crawler.settings.XMLSettingsHandler.initialize(XMLSettingsHandler.java:124)
 at org.archive.crawler.admin.CrawlJobHandler.loadProfile(CrawlJobHandler.java:385)
 at org.archive.crawler.admin.CrawlJobHandler.loadProfiles(CrawlJobHandler.java:348)
 at org.archive.crawler.admin.CrawlJobHandler.<init>(CrawlJobHandler.java:217)
 at org.archive.crawler.admin.CrawlJobHandler.<init>(CrawlJobHandler.java:186)
 at org.archive.crawler.Heritrix.<init>(Heritrix.java:405)
 at org.archive.crawler.Heritrix.<init>(Heritrix.java:393)
 at org.archive.crawler.Heritrix.doCmdLineArgs(Heritrix.java:718)
 at org.archive.crawler.Heritrix.main(Heritrix.java:556)
虽然报错,但是可以进入登陆页面,UI已经正常启动。
这个东西没有用过,前一天刚刚使用cmd命令运行成功,今天在eclipse中建工程又碰到新问题。
一步一坎啊。
昨天运行的时候后台是没有报这个错误的,但是今天在eclipse下配置文件位置不对也报过NullPointerException的错误。
因此分析还是少了某个文件。
经过几个小时调试,发现是少了一个名字为tlds-alpha-by-domain.txt的文件。
发布包中对应位置是有该文件的,具体位置为org\archive\util,在该路径下补充该文件就不报错了。
该文件可以在源文件包src\resources路径下找到。
 
出现这种情况的原因是编译器没有把txt编译到bin 目录上去,设置你的开发工具让其编译txt文件即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值