1 环境部署
本地系统Mac os,ide使用的是Idea,jdk版本是1.8。开始部署环境,找的教程都下载的是3.1或3.0安装包,开始直接直接运行项目,但运行后会提示如下错误。
Exception in thread "main" java.lang.NoClassDefFoundError: sun/security/tools/KeyTool
at org.archive.crawler.Heritrix.useAdhocKeystore(Heritrix.java:438)
at org.archive.crawler.Heritrix.instanceMain(Heritrix.java:319)
at org.archive.crawler.Heritrix.main(Heritrix.java:189)
Caused by: java.lang.ClassNotFoundException: sun.security.tools.KeyTool
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
到项目的github页面issue中看到 https://github.com/internetarchive/heritrix3/commit/12dde2b69361f79eaa3ea53193d2014f31fd730a
使用 java 6 and 7不会出现这个异常,而8会,目前这个问题已经修复。拉取master分支代码运行即可。但在项目主页拉取master代码后,如下jar包通过maven一直获拉取不到。
-
dnsjava
-
mg4j
-
javaswf
-
kryo
-
reflectasm
-
minlog
接着参照这篇博文https://blog.youkuaiyun.com/l294265421/article/details/49737133,从下载的安装包中lib目录下将jar包本地安装即可3.0,3.1均可。随后在org.archive.crawler.Heritrix类中启动main方法,可正常启动项目。
Mac os下WARC包查看工具
参照github页面配置好种子地址,运行第一个爬虫后,抓取结果默认是以warc包形式保存。这时无法打开查看内容。通过Archive Expert这个工具在mac os下可以打开包查看抓取结果。