Heritrix在Windows下的安装,运行

 

1 安装
      1.1 首要条件
          使用Windows XP / 2003 均可。必须有JAVA环境,请自行安装J2SE jre/jdk。我使用的版本是JAVA SE 1.6.0_02。
      1.2 下载Heritrix
        Heritrix的主页:http://crawler.archive.org/
            下载页面:http://crawler.archive.org/downloads.html,在此页面中选择 Sourceforge Downloads进入下载列表,选择一个版本的ZIP压缩包进行下载。当前最新的版本是Heritrix-1.12.1。
      1.3 安装、配置Heritrix
            1、将得到的Heritrix压缩包直接解压缩到某一目录,我选择的是D:/Heritrix。
            2、将 /Heritrix 目录中的heritrix-1.12.1.jar文件解包,把 profiles/default 下的两个文件order.xml和seeds.txt复制到 /heritrix/conf 目录。
            3、以文本编辑方式打开 /heritrix/conf 下的heritrix.properties文件,在“heritrix.cmdline.admin = ” 项的后面加入你所要设定的管理员账户和密码,用“:”分割,如:
                 heritrix.cmdline.admin = admin:pwd1234
            4、复制 /heritrix/conf 下的jmxremote.password.template文件到主目录/Heritrix 下,并更名为jmxremote.password。编辑此文件,更改最后两行"monitorRole @PASSWORD@"、"controlRole @PASSWORD@"中的"@PASSWORD@"为管理员密码。如:
                  monitorRole pwd1234
                  controlRole pwd1234
2 运行
     2.1 系统自带脚本运行
           在目录 /heritrix/bin 下可见“heritrix.cmd”脚本文件,这就是heritrix的运行脚本文件。直接双击运行则命令窗口会一闪而过,并没有启动起来。这里其实需要带参数才能运行。可在 /heritrix/bin 目录下建立一个脚本文件,如 run.cmd 包含内容如下:
           heritrix.cmd --admin=admin:pwd1234
           双击此脚本,至此Heritrix即运行起来。
           在XP下,此方法运行时会产生两个窗口,第一个窗口即脚本窗口,在第一次运行时候会显示提示“需要更改jmxremote.password属性为只读,是否更改?Y,N”,请选择Y。第二个窗口显示Heritrix运行状况。运行成功后前一个窗口会自动关闭,第二个窗口中显示Heritrix版本号。内容见图1。
            而在2003std版本下运行此脚本文件并不会有更改文件只读属性的提示,Heritrix启动起来后脚本命令窗体关闭,仅保留Heritrix运行状况窗体。
     2.2 自写命令运行
           另外一种方法是自己建立一个脚本文件运行heritrix。在 /heritrix/bin 目录下建立文件run.bat,脚本内容如下[参考文献1]:
           java -Xmx512m -Dheritrix.home=D://heritrix -cp "D://heritrix//lib//commons-codec-1.3.jar;
              D://heritrix//lib//commons-collections-3.1.jar;D://heritrix//lib//dnsjava-2.0.3.jar;
              D://heritrix//lib//poi-scratchpad-2.0-RC1-20031102.jar;
              D://heritrix//lib//commons-logging-1.0.4.jar;D://heritrix//lib//commons-httpclient-3.0.1.jar;
              D://heritrix//lib//commons-cli-1.0.jar;D://heritrix//lib//mg4j-1.0.1.jar;
              D://heritrix//lib//javaswf-CVS-SNAPSHOT-1.jar;D://heritrix//lib//bsh-2.0b4.jar;
              D://heritrix//lib//servlet-tomcat-4.1.30.jar;D://heritrix//lib//junit-3.8.2.jar;
              D://heritrix//lib//jasper-compiler-tomcat-4.1.30.jar;D://heritrix//lib//commons-lang-2.3.jar;
              D://heritrix//lib//itext-1.2.0.jar;D://heritrix//lib//poi-2.0-RC1-20031102.jar;
              D://heritrix//lib//jetty-4.2.23.jar;D://heritrix//lib//commons-net-1.4.1.jar;
              D://heritrix//lib//libidn-0.5.9.jar;D://heritrix//lib//ant-1.6.2.jar;
              D://heritrix//lib//fastutil-5.0.3-heritrix-subset-1.0.jar;D://heritrix//lib//je-3.2.23.jar;
              D://heritrix//lib//commons-pool-1.3.jar;D://heritrix//lib//jasper-runtime-tomcat-4.1.30.jar;
              D://heritrix//heritrix-1.12.1.jar" org.archive.crawler.Heritrix
           此方法运行Heriterx不会有任何提示和其他窗口,直接显示Heritrix运行状况窗体。

图1 Heritrix运行状况窗体

3 任务
     3.1 登录
           通过以上步骤Heritrix已经运行起来,可通过浏览器访问其WebUI。在浏览器地址栏中输入地址:http://127.0.0.1:8080/,出现Heritrix的登录界面,如图2:

图2 Heritrix WebUI 登录界面

           输入前面我们设置的用户名及密码登录,登录成功后界面如图3:

图3 Heritrix WebUI 登录成功后进入的界面

     3.2 建立抓取任务
           3.2.1 新建任务
           单击图3所显示的WebUI中的“Jobs”菜单进入任务设置页面,如图4:

图4 任务页面

           点选图4中所示的“With defaults”,按照默认的设置创建一个新的抓取任务。可如图5所示进行设置:

图5 建立任务设置

           任务名字可随便起,种子地址可以添加多个,但需要是包含http和最后的斜杠在内的完整网址,这里测试使用百度的网址。之后点击左下角的Modules按钮,进入处理链设置页面。
           3.2.2 处理链的设置
           具体设置不再进行说明,可参见参考书目1中的内容(CSDN有免费试读),设置如图6:

图6 处理链设置

           设置方法很简单,就是在下拉列表中选择好,点击Add添加即可。之后的设置可参考图中内容,要注意每一项处理器设置都是有顺序关系的。每一项的名称其实都揭示了其作用,这里不再描述,需要中文的请看参考书目1。
           3.2.3 运行参数设置
           处理链设置完成后,点击图7中所示菜单的“Settings”项,进行运行参数的设置。

图7 选择Jobs菜单的“Settings”项进入运行参数设置页面

           进入运行参数设置页面后,有很多可以设定的参数,对于需要了解详情的设置,请点击设置框左边的“?”号,可看到弹出的帮助信息。最简单的可只更改“HTTP-Header”项中的内容,更改其属性值“user-agent”和“from”。修改内容如图8:

图8 运行参数设置中的“HTTP-Header”项
           图8中红色框内是修改前后对照。其中“user-agent”中的“PROJECT_URL_HERE”对应自己的完整URL地址,“from”中设置自己的合法email地址,这两项设置其实可随便设置,只要格式规则合法即可。
           设置完成后,点击如图9所示任务提交菜单项,即完成全部任务的建立工作。
图9 任务提交菜单

     3.3 运行任务
           通过提交设定好的任务,页面返回到Jobs的主菜单,可看到如图10画面:

图10 任务已经建立

           在图10中,我们可以看到红色字说明一个任务已经被建立,在页面下方有任务的一些信息和设置菜单。此时点击左上角的“Console”菜单,返回主页面,看到如图11:

图11 等待开始的任务

           按照图11中的红色说明,点击“Start”可以开始任务。如图12:

图12 已经激活的任务

           点击左下角红色框标出的“Refresh”选项,可以刷新任务状态。图13是刚刚开始的任务状态:

图13 刚刚开始的任务
           在图13中,我们可以看到,要暂停当前任务可点击任务状态旁的选项“Pause”。图14是已经运行了两分钟左右的工作:
图14 运行了两分钟的任务

           从图14中我们可以看到,抓取速度是很快的,之前“Settings”选项中的抓取线程使用了默认的100线,此时全部已经使用,抓取速度达到了195KBs,每秒7.7个URIs。
           抓取后的网站结构和文件保存如图15:

图15 抓取后的网站和文件保存结构
           图15中可以看到,每一个站点的URL地址即为保存的目录名称,其文件和对应的服务目录结构被保存到此目录下面。这样方便搜索引擎的使用。不过也从此处看出,Heritrix更像一个强大的网站下载工具。

          
           至此,Heritrix的简单抓取任务设置描述完毕。希望对大家有所帮助。

你可能感兴趣的:(Java技术)