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運行狀況窗體。
3 任務
???? 3.1 登錄
?????????? 通過以上步驟Heritrix已經運行起來,可通過瀏覽器訪問其WebUI。在瀏覽器地址欄中輸入地址:http://127.0.0.1:8080/,出現Heritrix的登錄界面,如圖2:
?????????? 輸入前面我們設置的用戶名及密碼登錄,登錄成功后界面如圖3:
圖3 Heritrix WebUI 登錄成功后進入的界面???? 3.2 建立抓取任務
?????????? 3.2.1 新建任務
?????????? 單擊圖3所顯示的WebUI中的“Jobs”菜單進入任務設置頁面,如圖4:
?????????? 點選圖4中所示的“With defaults”,按照默認的設置創建一個新的抓取任務。可如圖5所示進行設置:
圖5 建立任務設置?????????? 任務名字可隨便起,種子地址可以添加多個,但需要是包含http和最后的斜杠在內的完整網址,這里測試使用百度的網址。之后點擊左下角的Modules按鈕,進入處理鏈設置頁面。
?????????? 3.2.2 處理鏈的設置
?????????? 具體設置不再進行說明,可參見參考書目1中的內容(CSDN有免費試讀),設置如圖6:
?????????? 設置方法很簡單,就是在下拉列表中選擇好,點擊Add添加即可。之后的設置可參考圖中內容,要注意每一項處理器設置都是有順序關系的。每一項的名稱其實都揭示了其作用,這里不再描述,需要中文的請看參考書目1。
?????????? 3.2.3 運行參數設置
?????????? 處理鏈設置完成后,點擊圖7中所示菜單的“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中,我們可以看到紅色字說明一個任務已經被建立,在頁面下方有任務的一些信息和設置菜單。此時點擊左上角的“Console”菜單,返回主頁面,看到如圖11:
圖11 等待開始的任務?????????? 按照圖11中的紅色說明,點擊“Start”可以開始任務。如圖12:
圖12 已經激活的任務?????????? 點擊左下角紅色框標出的“Refresh”選項,可以刷新任務狀態。圖13是剛剛開始的任務狀態:
圖13 剛剛開始的任務在圖13中,我們可以看到,要暫停當前任務可點擊任務狀態旁的選項“Pause”。圖14是已經運行了兩分鐘左右的工作:
圖14 運行了兩分鐘的任務
?????????? 從圖14中我們可以看到,抓取速度是很快的,之前“Settings”選項中的抓取線程使用了默認的100線,此時全部已經使用,抓取速度達到了195KBs,每秒7.7個URIs。
?????????? 抓取后的網站結構和文件保存如圖15:
圖15中可以看到,每一個站點的URL地址即為保存的目錄名稱,其文件和對應的服務目錄結構被保存到此目錄下面。這樣方便搜索引擎的使用。不過也從此處看出,Heritrix更像一個強大的網站下載工具。
??????????
?????????? 至此,Heritrix的簡單抓取任務設置描述完畢。希望對大家有所幫助。
參考文獻:
[1] 邱哲 符滔滔,《開發自己的搜索引擎——Lucene 2.0+Heriterx》,人民郵電出版社,2007-4,在線免費閱讀第10章內容:http://book.csdn.net/bookfiles/312/10031212848.shtml
?
???????????????????????? 轉:http://hi.baidu.com/cnnac/blog/item/9c3aacecbaff112463d09fb1.html
總結
以上是生活随笔為你收集整理的Heritrix在Windows下的运行和简单任务设置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机影视教学大纲,影视剪辑-授课计划.
- 下一篇: iOS中触摸事件传递和响应原理