2345678

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Ubuntu環(huán)境下Nutch+Tomcat 搭建簡單的搜索引擎

系統(tǒng) 2801 0

簡易的搜索引擎搭建

我的配置:

Nutch:1.2

Tomcat:7.0.57

1 Nutch設(shè)置

修改Nutch配置

1.1 修改conf/nutch-site.xml

        
           1
        
         <?xml version=
        
          "
        
        
          1.0
        
        
          "
        
        ?>


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


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


        
           5
        
        
           6
        
         <configuration>


        
           7
        
        
           8
        
             <!--property> 


        
           9
        
             <name>storage.data.store.
        
          class
        
        </name> 


        
          10
        
             <value>org.apache.gora.hbase.store.HBaseStore</value> 


        
          11
        
             <description>Default 
        
          class
        
        
          for
        
         storing data</description> 


        
          12
        
             </property> 


        
          13
        
             <property>


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


        
          15
        
             <value>xxx0624-ThinkPad-Edge</value> 


        
          16
        
             </property-->


        
          17
        
        
          18
        
         <property>


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


        
          20
        
           <value>nutch1.
        
          0
        
        </value>


        
          21
        
         </property>


        
          22
        
        
          23
        
         <property>


        
          24
        
           <name>plugin.folders</name>


        
          25
        
           <value>./plugins</value>


        
          26
        
         </property>


        
          27
        
        
          28
        
         </configuration>
      
View Code

1.2 修改conf/crawl-urlfilter.txt

      
        1
      
       # accept hosts 
      
        in
      
      
         MY.DOMAIN.NAME


      
      
        2
      
       +^http:
      
        //
      
      
        ([a-z0-9]*\.)*sohu.com/
      
    

找到該處進(jìn)行修改。我的是以sohu網(wǎng)為例。表示只爬取sohu.com結(jié)尾的網(wǎng)頁。

1.3 增加文件夾

在nutch目錄下mkdir一個新的文件夾 名字為urls,再在里面建立一個空的txt文件 名字為urls.txt。

在urls.txt中寫入要爬取的網(wǎng)頁地址:如http://www.sohu.com/

1.4 開始爬取

命令:

      bin/nutch crawl urls/urls.txt -dir crawled -depth 5 -threads 5 -topN 200


    

crawled指爬取網(wǎng)頁的結(jié)果的存儲位置,當(dāng)爬取結(jié)束時,會自動生成5個文件夾:crawldb,index,indexes,linkdb,segments

?

2 tomcat設(shè)置

2.1 將nutch編譯后的war包放在tomcat的webapps下,再啟動tomcat,再在生成的nutch1.2文件夾下修改WEB-INF/classes/nutch-sites.xml

      <property>    

    <name>searcher.dir</name>    

    <value>/home/xxx0624/nutch-
      
        1.2
      
      /crawled</value>    

</property>  
    

這是設(shè)置抓取網(wǎng)頁信息的文件位置

2.2 針對中文亂碼修改

2.2.1 修改tomcat配置文件conf/server.xml

      
        1
      
       <Connector port=
      
        "
      
      
        8080
      
      
        "
      
       protocol=
      
        "
      
      
        HTTP/1.1
      
      
        "
      
      
        2
      
       connectionTimeout=
      
        "
      
      
        20000
      
      
        "
      
      
        3
      
       redirectPort=
      
        "
      
      
        8443
      
      
        "
      
      
        4
      
       URIEncoding=
      
        "
      
      
        UTF-8
      
      
        "
      
      
        5
      
       useBodyEncodingForURI=
      
        "
      
      
        true
      
      
        "
      
      /> 
    

增加其中的URIEncoding和useBodyEncodingForURI

2.2.2 修改nutch-1.2/cache.jsp

找到這一部分

        
           1
        
         Metadata metaData =
        
           bean.getParseData(details).getContentMeta();


        
        
           2
        
         ParseData ParseData =
        
           bean.getParseData(details);  


        
        
           3
        
           String content = 
        
          null
        
        
          ;


        
        
           4
        
        
          //
        
        
           String contentType = (String) metaData.get(Metadata.CONTENT_TYPE);
        
        
           5
        
         String contentType =
        
           ParseData.getMeta(Metadata.CONTENT_TYPE);


        
        
           6
        
        
          if
        
         (contentType.startsWith(
        
          "
        
        
          text/html
        
        
          "
        
        
          )) {


        
        
           7
        
        
          //
        
        
           FIXME : it's better to emit the original 'byte' sequence 


        
        
           8
        
        
          //
        
        
           with 'charset' set to the value of 'CharEncoding',


        
        
           9
        
        
          //
        
        
           but I don't know how to emit 'byte sequence' in JSP.


        
        
          10
        
        
          //
        
        
           out.getOutputStream().write(bean.getContent(details)) may work, 


        
        
          11
        
        
          //
        
        
           but I'm not sure.


        
        
          12
        
        
          //
        
        
          String encoding = (String) metaData.get("CharEncodingForConversion"); 
        
        
          13
        
             String encoding = ParseData.getMeta(
        
          "
        
        
          CharEncodingForConversion
        
        
          "
        
        
          ); 


        
        
          14
        
        
          if
        
         (encoding != 
        
          null
        
        
          ) {


        
        
          15
        
        
          try
        
        
           {


        
        
          16
        
                 content = 
        
          new
        
        
           String(bean.getContent(details), encoding);


        
        
          17
        
        
                }


        
        
          18
        
        
          catch
        
        
           (UnsupportedEncodingException e) {


        
        
          19
        
        
          //
        
        
           fallback to windows-1252
        
        
          20
        
                 content = 
        
          new
        
         String(bean.getContent(details), 
        
          "
        
        
          windows-1252
        
        
          "
        
        
          );


        
        
          21
        
        
                }


        
        
          22
        
        
              }


        
        
          23
        
        
          else
        
        
          24
        
          content = 
        
          new
        
         String(bean.getContent(details),
        
          "
        
        
          GBK
        
        
          "
        
        
          ); 


        
        
          25
        
        
          //
        
        
          content = new String(bean.getContent(details));
        
      
View Code

?

3 開始實驗

重啟tomcat

通過瀏覽器訪問:http://localhost:8080/nutch-1.2

?

Ubuntu環(huán)境下Nutch+Tomcat 搭建簡單的搜索引擎


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 寻乌县| 克什克腾旗| 三原县| 贺兰县| 剑河县| 重庆市| 淅川县| 白朗县| 临泉县| 潜山县| 汝南县| 平潭县| 阿坝| 石林| 黔江区| 东辽县| 玉环县| 渭南市| 灯塔市| 澄迈县| 和林格尔县| 右玉县| 仙桃市| 会东县| 家居| 新巴尔虎左旗| 神池县| 信阳市| 宝丰县| 六枝特区| 家居| 南京市| 桐乡市| 莆田市| 沁源县| 黄大仙区| 锦屏县| 麻城市| 土默特左旗| 江城| 天门市|