zoukankan      html  css  js  c++  java
  • Heritrix在eclipse中的配置

    Eclipse中配置使用Heritrix-1.14.4

    1. 下载并解压heritrix-1.14.4-src.zipheritrix-1.14.4.zip;

    2. Eclipse中新建java project,项目名定为HeritrixProject;

    3. 将解压后的heritrix-1.14.4-src.zipsrc/java/下的com,org,st文件夹复制到工程的src目录下;

    4. src/conf下的modules,profiles,selftest文件夹和heritrix.propertries,jndi.properities文件复制到工程的src目录下;

    5. 解压heritrix-1.14.4-zipwebapps文件夹复制到工程根目录下;

    6. 将heritrix-1.14.4-src.zip解压中src/resources/org/archive/util中tlds-alpha-by-domain.txt文件复制到工程中org.archive.util包下;

    7. 将heritrix-1.14.4-src.zip解压中lib文件夹复制到项目根目录;

    8. 打开工程中的heritrix.propertries文件修改以下配置项

       a) heritrix.version= 1.14.4配置heritrix版本号

       b) heritrix.jobsdir= jobs,配置爬取的内容的放置文件夹

       c) heritrix.cmdline.admin=username:password,配置webUI登录的用户名和密码

       d) heritrix.cmdline.port= 8088,配置webUI的登录端口

    9. lib文件夹下的后有jar包加入到工程的classpath中;

    10. 在工程中找到org.archive.crawler下的Heritrix.java运行,成功运行结果如下:

    10:19:37.985 EVENT  Starting Jetty/4.2.23
    10:19:38.139 EVENT  Started WebApplicationContext[/,Heritrix Console]
    10:19:38.227 EVENT  Started SocketListener on 127.0.0.1:8088
    10:19:38.227 EVENT  Started org.mortbay.jetty.Server@5861
    Heritrix version: 1.14.4

    11.打开浏览器,输入地址:http://localhost:8088输入用户名和密码就可以登录到后台,如下图所示:

    可能遇到的异常:

    1>Thread-10 org.archive.util.ArchiveUtils.<clinit>() TLD list unavailable

    solution:将解压后的heritrix-1.14.4-src.zipsrc/resources/中将文件org/archive/util/tlds-alpha-by-domain.txt复制到工程中的org/archive/util目录下即可;

    2> Exception in thread "main" org.mortbay.util.MultiException[java.net.BindException: Address already in use: JVM_Bind]

    solution: 由于端口被占用,可先关闭Eclipse停止相关进程,然后在开启即可;

    3> 找不到类 sun.net.www.protocol.file.FileURLConnection:

    solution: sun包是受保护的包,默认只有sun公司的软件才能使用。Eclipse会报错,把对保护使用warning就可以了。Windows -> Preferences -> Java -> Compiler -> Errors/Warnings-> Deprecated and trstricted API -> Forbidden reference (access rules): -> change to warning;

    4> The method finalTasks() of type AdaptiveRevisitFrontier must override a superclass method:

    Solution: 去掉该类中此方法上方的@Override即可;

    5> Sometimes, 各个包及文件都没错,Heritrix仍会报错,尝试将工程目录下的爬取内容的放置文件夹jobs去掉

     

  • 相关阅读:
    一个翻译小程序(带一点点抒情)
    前线解释多线程《二》
    一周杂记(MVC 图片上传)
    MVC杂记<>路由
    MVC杂记<三>Controller
    201920201学期20192412《网络空间安全专业导论》第二周学习总结
    201920201学期20192412《网络空间安全专业导论》第一周学习总结
    命令行执行php脚本 中$argv和$argc
    搭建lnmp教程
    php中static 静态关键字
  • 原文地址:https://www.cnblogs.com/likai198981/p/2856902.html
Copyright © 2011-2022 走看看