1. 程式人生 > >開源爬蟲: Heritrix 3.1 Windows 上安裝/使用

開源爬蟲: Heritrix 3.1 Windows 上安裝/使用

目前 Heritrix 的最新版本是 3.1.0(2011-10-21 釋出) 講了 1.14.4 版本的安裝和使用 講了如何擴充套件 1.14.4 版本其中的模組 本文講如何安裝和使用 Heritrix 最新的 3.1.0 版 下載: 在 Eclipse 中的配置 首先在 Eclipse 中新建 Java 工程 MyHeritrix3。然後利用下載的原始碼包根據以下步驟來配置這個工程。 1. 匯入類庫 Heritrix 所用到的工具類庫都在 heritrix-3.1.0-dist.zip 的 \lib 目錄下,需要將其匯入 MyHeritrix3 工程。 1)將 heritrix-3.1.0-dist 下的 lib 資料夾拷貝到 MyHeritrix3 專案根目錄; 2)在 MyHeritrix3 工程上右鍵單擊選擇“Build Path -> Configure Build Path …”,然後選擇 Library 選項卡,單擊“Add JARs …”。 3)在彈出的“JAR Selection”對話方塊中選擇 MyHeritrix3 工程 lib 資料夾下所有的 jar 檔案,然後點選 OK 按鈕。 2. 拷貝原始碼
將 heritrix-3.1.0\engine\src\main\java 新增到Eclipse的src目錄,以及:heritrix-3.1.0\commons\src\main\java 目錄 和 heritrix-3.1.0\modules\src\main\java 目錄。 這樣你就可以刪除heritrix-commons-3.1.0.jar,heritrix-engine-3.1.0.jar,heritrix-modules-3.1.0.jar三個包的引用,直接使用原始碼執行。 3、執行Heritrix 3.1 在 MyHeritrix 工程上右鍵單擊選擇“Run As -> Run Configurations”,選擇 Java Application, 確保 Main 選項卡中的 Project 和 Main class 選項內容正確,其中的 Name 引數可以設定為任何方便識別的名字。 在 argument 項中設定啟動引數-a admin:admin(輸入啟動賬號),如下圖:
開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用


然後執行Heritrix.java,如果一切正常, eclipse 執行結果如圖: 開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用

可以看到程式已經在 8443 埠執行. 你可以通過:https://localhost:8443 訪問Heritrix 3.1的管理端。要注意是 https , 不是 http 開啟頁面後會提示輸入使用者名稱和密碼,輸入 admin, admin 4、建立和配置抓取任務 登入管理控制檯(使用者名稱admin密碼admin),在管理介面首頁找到如下圖這個位置: 開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用
輸入一個名稱(如 test),然後點選“Create”按鈕。 這時候根據預設模版生成了一個抓取任務,但還不能抓取任何東西,我們需要通過配置檔案的修改告訴伺服器,我們要抓取什麼。 在管理控制檯的Job Directories中選擇要配置的job(下圖中myjob)
開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用


點選 myjob, 進入myjob的管理介面,如下圖: 開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用
點選 edit 按鈕,開始編輯配置檔案,配置需要修改的地方如下圖所示,先從簡單的做起: 開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用

配置1和3的配置內容是一樣的,operatorContactUrl寫成 http://localhost, jobName和description隨便寫點東西即可。 配置2則是配置搜尋種子網站的列表,我這裡先寫了一個http://www.sina.com.cn,先抓取新浪網站試試。 點選最上面的“Save changes"儲存所有的配置檔案。 這三個地方配置好就可以執行這個抓取任務試試了。 這時候需要執行如下操作(回到myjob的配置介面),讓任務執行起來: 1)點選“build”編譯當前的配置。 2)點選“launch”按鈕運行當前任務至掛起狀態,如果job已經執行,則先點選“teardown”按鈕; 3)這時任務處於掛起狀態,點選“unpause”即立即啟動任務。 如果系統正常執行,會有如下類似提示資訊: 開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用

在專案的jobs\test\20131226062239\warcs目錄下有一個逐步增大的檔案,這就是抓取下來的網頁。 如果要看到每個抓取的頁面,可以將配置檔案的warcWriter這個bean的class改為org.archive.modules.writer.MirrorWriterProcessor,這樣就下載的網頁是以映象檔案的形式儲存在,一般存放在專案根目錄下的mirror目錄下。 這種方式是較刻板的.因為它是直接將warcWriter bean 的 class 改了,但裡面的屬性還是之前類的。如果把屬性的註釋開啟,會報錯,因為 MirrorWriterProcessor 沒有那些 property, 所以最好是自己再定義一個 bean. 然後在配置中引用它: 開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用

定義上面三個 bean. 然後再在 dispositionProcessors 中將 processors 的引用改成 mirrorWriter: 開源爬蟲: <wbr>Heritrix <wbr>3.1 <wbr>Windows <wbr>上安裝/使用