Nutch搜索引擎(第4期)_ Eclipse開發配置


1、環境准備

1.1 本期引言

    前三期分別介紹了NutchSolrLinux上面的安裝,並做了簡單的應用,這一期從開發的角度進行,因為我們日常最熟悉的開發環境是Windows,所以本期詳細介紹Windows平台的Nutch二次開發所需要進行的配置安裝。當我們開發好之后,最后在部署到Linux環境中。

    為了方便以后Nutch開發以及軟件安裝的管理,我們對開發環境配置進行如下安排:

    E:/(盤符)

    |----cygwin

    |----NutchWorkPlat

    |----ant

    |----solr

    |----nutch

        |----eclipse

        |----tomcat

        |----workspace

1.2 環境介紹

本次Nutch二次開發的環境介紹:

  • 操作系統:Windows 7 旗艦版
  • ANT版本:apache-ant- 1.8.3-bin.tar.gz
  • JDK版本:jdk- 6u31-windows-i586.exe
  • Solr版本:apache-solr- 3.5.0.zip
  • Nutch版本:apache-nutch- 1.4-bin.tar.gz
  • Tomcat版本:apache-tomcat- 7.0.27.tar.gz
  • Eclipse版本:eclipse-jee- indigo- SR1-win32.zip

下面是安裝的Eclipse插件:

  • IvyDE插件:
    • Ivy:
      • plugins:
  1. org.apache. ivy_ 2.2.0.final_20100923230623.jar
  2. org.apache. ivy.eclipse.ant_ 2.2.0.final_20100923230623.jar
  • features:org.apache. ivy.feature_ 2.2.0.final_20100923230623.jar
  • IvyDE:
    • plugins:org.apache. ivyde.eclipse_ 2.2.0.beta1-201203282058-RELEASE.jar
    • features:org.apache. ivyde.feature_ 2.2.0.beta1-201203282058-RELEASE.jar
  • Tomcat插件:tomcatPluginV 33.zip

1.3 JDK安裝配置

    雙擊"jdk-6u31-windows-i586.exe"即可進行安裝,我們一路點擊Next,默認安裝在C盤,下面是我們安裝完JDK的目錄。

    下面配置JAVA環境變量:右擊à我的電腦à屬性à高級系統設置à高級à環境變量。

【新建】

JAVA_HOME=C:\Program Files\Java\jdk1.6.0_31

CLASSPATH=.;% JAVA_HOME %\lib;% JAVA_HOME%\jre\lib

NUTCH_JAVA_HOME=% JAVA_HOME %

【增加】

PATH=……;% JAVA_HOME%\bin; % JAVA_HOME%\jre\bin

 

    第一步:點擊"新建",然后變量名寫上"JAVA_HOME",填上上面內容。

    備注:JAVA_HOME的變量值后千萬不能加分號。

    第二步:點擊"新建",然后變量名寫上"JAVA_HOME",填上上面內容。

    備注:要加圓點.表示當前路徑。

    第三步:點擊"新建",然后變量名寫上"NUTCH_JAVA_HOME",填上上面內容。

    第四步:在系統變量里找到Path,點擊編輯。在后面追加上面內容。

    備注:追加時,用";"與前面的值進行分割。

1.4 ANT安裝配置

    把"apache-ant-1.8.3-bin.tar.gz"解壓到"E:\NutchWorkPlat"中,並重新命名為"ant"。

下面配置ANT環境變量:右擊à我的電腦à屬性à高級系統設置à高級à環境變量。

 

【新建】

ANT_HOME= E:\NutchWorkPlat\ant

【增加】

PATH=……;%ANT_HOME%\bin; %ANT_HOME%\lib

 

第一步:點擊"新建",然后變量名寫上"ANT_HOME",填上上面內容。

備注:ANT_HOME的變量值后千萬不能加分號。

    第二步:在系統變量里找到Path,點擊編輯。在后面追加上面內容。

備注:追加時,用";"與前面的值進行分割。

1.5 IvyDE安裝配置

    從官網上把上面所寫的IvyDE的Eclipse插件下載下來。

    備注:其他網友和官網都只說安裝"ivyde-2.2.0.beta1"即可,但是發現安裝沒有起作用,按照"Eclipse安裝ivyDe插件"這篇文章成功了。

    【ivyde-eclipse

 

  • ivyde- plugins

 

    把"org.apache.ivyde.eclipse_2.2.0.beta1-201203282058-RELEASE.jar"復制到Eclipse安裝目錄的"plugins"中。

  • ivyde- features

 

    把"org.apache.ivyde.feature_2.2.0.beta1-201203282058-RELEASE.jar"解壓到Eclipse安裝目錄的"features"中。

    備注:是解壓之后放到目錄"features"中,而不是直接把jar包放到里面,不然啟動Eclipse后,打開WindowàShow ViewàError log后,提示"Unable to find feature.xml in directory"。

ivy-eclipse

  • ivy- plugins

把"org.apache.ivy.eclipse.ant_2.2.0.final_20100923230623.jar"和"org.apache.ivy_2.2.0.

final_20100923230623.jar"復制到Eclipse安裝目錄的"plugins"中。

  • ivy- features

 

把"org.apache.ivy.feature_2.2.0.final_20100923230623.jar"解壓到Eclipse安裝目錄的"features"中。

    完成以上步驟之后,重啟Eclipse,打開Windowàpreference對話框里看到ivy一欄;打開HelpàAbout EclipseàInstallationàPlug-ins列表里也可以看到兩個ivy,一個ivyDe。

 

 

 

1.5 Tomcat安裝配置

    首先安裝Tomcat,把"apache-tomcat-7.0.27.tar.gz"解壓到"E:\NutchWorkPlat"目錄下,並重新命名為"tomcat"。

 

    進入"E:\NutchWorkPlat\tomcat\bin"點擊"startup.bat",然后出現如下界面。

 

 

    然后在瀏覽器輸入"http://localhost:8080/",出現如下界面,表示安裝成功。

 

    接着安裝Tomcat的Eclipse插件,並讓Eclipse與Tomcat結合,把"tomcatPluginV33.zip"后的"com.sysdeo.eclipse.tomcat_3.3.0"復制到"E:\NutchWorkPlat\eclipse\plugins"中,然后重啟Eclipse。

 

    打開Windowàpreference對話框里看到tomcat一覽,點擊tomcat,把剛才解壓的tomcat進行關聯,操作如下。

    點擊工具欄的"Start Tomcat"即可啟動Tomcat。

 

    然后在Eclipse控制台會輸出啟動Tomcat的相關信息。

 

    此時可以再次在瀏覽器輸入"http://localhost:8080/"進行驗證是否啟動成功。

1.6 Cygwin安裝配置

nutch是在hadoop基礎上做的,由於hadoop只在linux上運行,里面涉及到大量的操作linux程序,所以我們在Windows部署的時候必須先安裝cygwin環境,模擬linux操作。

我們這次安裝cygwin是用安裝包進行安裝,並沒有采用Internet在線安裝。

 

 

在上圖所示的對話框中,直接點擊"下一步",進入如下圖所示的對話框:

 

 

界面出現三種安裝模式:

  • Install from Internet,這種模式直接從Internet安裝,適合網速較快的情況;
  • Download Without Installing,這種模式只從網上下載Cygwin的組件包,但不安裝;
  • Install from Local Directory,這種模式與上面第二種模式對應,當你的Cygwin組件包已經下載到本地,則可以使用此模式從本地安裝Cygwin。

我們這里選擇第三種"Install from Local Directory"方式進行安裝,然后點擊"下一步",進入如下圖所示對話框:

 

在上圖所示的對話框中,設置Cygwin 的安裝目錄,Install For 選擇"All Users",然后點擊"下一步",進入如下圖所示對話框:

選擇本地安裝包的路徑,然后點擊"下一步",進入如下圖所示對話框:

    

點擊"確定",進入如下圖所示對話框:

 

進入"Select Packages"對話框后,其實直接點擊"下一步",進行默認安裝即可,為了以后再cygwin下面搭建hadoop環境,所以安裝了一些軟件。

  • OpenSSL
  • sed
  • vim

必須保證"Net Category"下的"OpenSSL"被安裝,如下圖所示:

 

 

如果還打算在eclipse 上編譯Hadoop,則還必須安裝"Base Category"下的"sed",如

下圖所示:

 

另外,還建議將"Editors Category"下的vim 安裝,以方便在Cygwin 上直接修改配置文件,如下圖所示:

建議安裝在"Devel Category"下的subversion,如下圖所示:

當完成上述操作后,點擊"Select Packages"對話框中"下一步",進入Cygwin 安裝包

下載過程,如下圖所示:

 

 

 

當安裝完后,會自動進入到如下圖所示的對話框:

 

在上圖所示的對話框中,選中"Create icon on Desktop",以方便直接從桌面上啟動

Cygwin,然后點擊"完成"按鈕。至此,Cgywin 已經安裝完,安裝目錄下的內容如下圖所示:

    當安裝完Cygwin軟件之后,我們還需要對其設置它的環境變量。

【新建】

CYGWIN_HOME= E:\cygwin

【增加】

PATH=……;% CYGWIN_HOME %\bin

第一步:點擊"新建",然后變量名寫上"CYGWIN_HOME",填上上面內容。

    第二步:在系統變量里找到Path,點擊編輯。在后面追加上面內容。

2、Eclipse開發

2.1 Solr部署

    第一步:把"apache-solr-3.5.0.zip"解壓到"E:\NutchWorkPlat"目錄下,並命名為"solr"。

 

 

    第二步:把"E:\NutchWorkPlat\solr\dist"目錄下的"apache-solr-3.5.0.war"重命名為"solr.war",並把它放到"E:\NutchWorkPlat\tomcat\webapps"目錄下面。

 

 

    第三步:修改Tomcat配置文件"E:\NutchWorkPlat\tomcat\conf\server.xml",添加中文編碼支持。

 

    第四步:把"E:\NutchWorkPlat\solr\example"目錄下的"solr"文件夾連同里面的內容一起復制到"E:\NutchWorkPlat\tomcat"目錄中。

 

 

    第五步:在"E:\NutchWorkPlat\tomcat\conf\Catalina\localhost"下創建一個"solr.xml"文件,內容如下所示:

 

<?xml version="1.0" encoding="UTF-8"?>

<Context docBase="E:\NutchWorkPlat\tomcat\webapps\solr.war" debug="0"

crossContext="true" >

    <Environment name="solr/home" type="java.lang.String"

                value="E:\NutchWorkPlat\tomcat\solr" override="true" />

</Context>

 

    第六步:修改"E:\NutchWorkPlat\tomcat\solr\conf\ solrconfig.xml"找到下面這句話。

 

<queryResponseWriter

name="velocity"

class="solr.VelocityResponseWriter" enable="${solr.velocity.enabled:true}"/>

 

把 enable="${solr.velocity.enabled:true}中的true修改為false

第七步:重新啟動Tomcat,輸入"http://localhost:8080/solr/",出現下面界面。

 

2.2 Nutch導入

    第一步:把"apache-nutch-1.4-bin.tar.gz"解壓到"E:\NutchWorkPlat"目錄下,並重命名為"nutch"。

 

    第二步:在eclipse中新建立一個Java Project,名字自己定義為Nutch1.4_V0.1,去掉默認路徑(Use default location)前面的對勾,選擇"E:\NutchWorkPlat\nutch"。其他保持默認,點擊"next"。

 

 

    第三步:選擇"Librariesà Add Class Folder...",從列表中選擇"conf",將conf加入到classpath中。

 

 

 

    第四步着急點"next",選擇"Order and Export",選中"conf",點擊"Top",使其置頂,此步驟非常關鍵,置頂之后,點擊"Finish"。

 

 

    第五步:在"Nutch1.4_V0.1"工程根目錄下面創建"urls"文件夾(與src、conf同級),在里面在創建一個名為"urls.txt"的文件,在該文件里添加如下內容:

 

http://www.hebut.edu.cn

http://www.qq.com/

 

    第六步:在"Nutch1.4_V0.1"工程根目錄下的conf文件夾中,編輯"nutch-site.xml",使其內容如下:

 

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

 

<!-- Put site-specific property overrides in this file. -->

 

<configuration>

    <property>

        <name>http.agent.name</name>

        <value>My Nutch Spider</value>

    </property>

    

    <property>

        <name>plugin.folders</name>

        <value>./src/plugin</value>

    </property>

</configuration>

 

    備注:其中"http.agent.name"和"plugin.folders"必須設置,不然會出現"Job Failure"。

 

    第七步:在"Nutch1.4_V0.1"工程根目錄下的conf文件夾中,編輯"regex-urlfilter.txt",在"# accept anything else"下面輸入:"+^http://(\.*)*",然后保存。

 

 

    第八步:經過上面的配置之后,就可以爬去網頁了,選中"Nutch1.4_V0.1"工程右擊選擇"Run AsàRun Configurations",從中找到"Java Application",然后右擊選擇"New",在Main Class選擇"org.apache.nutch.crawl.Crawl",將名字命名為"Crawl"。

 

 

    第八步:接着上面在"Arguments"選項卡中按下面進行填寫,然后點擊"Apply與Run"。

 

  • Program Arguments:urls -dir crawl -depth 5 -threads 5 -topN 100
  • VM arguments:-Dhadoop.log.dir=logs -Dhadoop.log.file=hadoop.log

 

2.3 Solr與Nutch結合

    通過上面的步驟之后,指定的網頁已經抓取到本地了,現在我們就為我們下載的網頁建立索引。

    第一步:把"E:\NutchWorkPlat\nutch\conf"下面的"schema.xml"復制到Tomcat的安裝目錄"E:\NutchWorkPlat\tomcat\solr\conf"下,覆蓋掉原文件。schema.xml設置了索引的字段,把content項后面的stored="false" 改為 stored="true" 后在搜索返回值中就會包含含有關鍵字的具體內容。

 

 

    第二步:點擊Eclipse工具欄的"Start Tomcat"即可啟動Tomcat。

 

 

    備注:如果Tomcat已經起來了,在第一步完成之后,也應該重啟使其有效,如果不起動Tomcat,在建立索引時會失敗。

 

    第三步:經過上面的配置之后,就可以建立索引了,選中"Nutch1.4_V0.1"工程右擊選擇"Run AsàRun Configurations",從中找到"Java Application",然后右擊選擇"New",在Main Class選擇"org.apache.nutch.indexer.solr.SolrIndexer",將其命名為"SolrIndexer"。

 

    第四步:接着上面在"Arguments"選項卡中按下面進行填寫,然后點擊"Apply與Run"。

 

  • Program Arguments:

http://localhost:8080/solr/ crawl/crawldb -linkdb crawl/linkdb crawl/segments/*

  • VM arguments:-Dhadoop.log.dir=logs -Dhadoop.log.file=hadoop.log

 

 

    下面是Eclipse控制台輸出信息:

SolrIndexer: starting at 2012-04-18 14:45:41

Adding 352 documents

SolrIndexer: finished at 2012-04-18 14:45:56, elapsed: 00:00:14

 

    第五步:在瀏覽器輸入"http://localhost:8080/solr/admin/",並在查詢條件輸入關鍵字,點擊"Search"進行查詢。

 

    下面就是查詢結果,以XML結果顯示。

 

 

    到目前為止,Nutch二次開發的前期工作已經准備完畢,並在上面進行簡單的抓取,后面我們將對Nutch的源碼以及工作原理相結合進行分析。進一步認識Nutch。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM