• 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去掉

     

  • 相关阅读:
    牛客挑战赛45 D.坐标
    树上启发式合并(dsu on tree)合集
    2020HDU多校第二场 1012.String Distance
    2020HDU多校第一场 1009.Leading Robots
    2020牛客暑期多校训练营(第一场)H.Minimum-cost Flow
    自用综合线段树模板(区间加乘、区间置数、区间求和)
    ZOJ 4008.Yet Another Tree Query Problem(问题模型转化+线段树离线处理)
    最小费用最大流模板
    2020 CCPC Wannafly Winter Camp Day3.C. 无向图定向(k染色问题)
    2020牛客寒假算法基础集训营3.E.牛牛的随机数(数位dp拆位算贡献)
  • 原文地址:https://www.cnblogs.com/likai198981/p/2856902.html
Copyright © 2020-2023  润新知