Heritrix在Windows下的安裝,運行

來源:互聯網
上載者:User
 

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的簡單抓取任務設定描述完畢。希望對大家有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.