• heritrix的简单使用以及在后台调用heritrix


    heritrix是一个开源的java爬虫框架。这里简单介绍linux下heritrix的运行配置以及如何在后台自己的程序中调用heritrix程序爬指定的网站。

    =========== heritrix的配置及运行 ============

    关于heritrix的安装、配置及WEBUI运行网上介绍比较多,详细请看:

    http://www.iteye.com/topic/84206

    这里稍作介绍:

    首先将下好的heritrix后解包,修改./conf下的jmxremote.password.template文件到上级目录并改名为jmxremote.password。

    修改jmxremote.password文件中的monitorRole与controlRole字段,后面指定用户名与密码(也就是webui的用户名与密码)。配置完后执行heritrix。

    1 ./heritrix --admin=XXXX:XXXX

    这里完了会提示web console的地址以及登陆的用户名及密码。登陆后即可开始进行网站的爬取工作。

    =========== order.xml文件介绍 =============

    为了能在后台调用heritrix程序,首先需要了解下order.xml文件。这个文件配置了heritrix的一次爬行job的相关参数,具体每个参数的意义请看:

    http://guoyunsky.iteye.com/blog/613412,整理的是相当详细。我们这里需要关注的是以下几个路径:

    <string name="logs-path"></string>
    <string name="checkpoints-path"></string>
    <string name="state-path"></string>
    <string name="scratch-path"></string>

    这些值是heritrix生成的各种文件(有可能你的程序会用到这些文件),这里传入的可以是相对路径也可以是绝对路径。

    <string name="seedsfile"></string>

    这个是你要爬取的存放网站网址的文件路径。这个文件里的内容是每行一个网址。

    =========== 后台调用 ==============

    在自己的程序里调用heritrix程序爬取我们需要的步骤分为两步,首先生成我们的order.xml文件,指定我们的seedsfile,以及各path节点的路径。接着利用系统调用

    heritrix -n order.xml

    既可以在自己的程序中使用heritrix进行爬取操作了。

    =========== 其他 =================

    heritrix爬取网站的时间相对还是挺长的,这里给出一位网友的相关参数设置可以优化爬取速度:

    http://guoyunsky.iteye.com/blog/629891

    ===========over==================

    算是对自己的研究heritrix的一点小的总结。

  • 相关阅读:
    jQuery的选择器中的通配符[id^='code']
    浏览器调试js
    google浏览器调试js
    【暑假】[实用数据结构]UVAlive 3026 Period
    【暑假】[实用数据结构]UVAlive 3942 Remember the Word
    【暑假】[实用数据结构] AC自动机
    【暑假】[实用数据结构]KMP
    【暑假】[实用数据结构]前缀树 Trie
    【暑假】[实用数据结构]UVa11235 Frequent values
    【暑假】[实用数据结构]UVAlive 4329 Ping pong
  • 原文地址:https://www.cnblogs.com/aLittleBitCool/p/2234871.html
Copyright © 2020-2023  润新知