zoukankan      html  css  js  c++  java
  • Win7 配置 Nutch 1.2

    Win7环境下配置nutch-1.2



    Step1:安装jdk

    网上已有许多很好的教程了,这里不再赘述,只是强调两点

    1. Jdk的安装路径中不能有中文

    2. Jdk的安装路径中不能有空格


    Step2:安装tomcat

    网上已经有许多成熟的教程了,不再赘述了。Apache-tomcat官网:http://tomcat.apache.org/


    Step3:安装cygwin

    Cygwin官网:http://www.cygwin.com/

    Cygwin安装文件:http://www.cygwin.com/install.html


    Cygwin其实就是一个*nix系统的虚拟机(和ubuntu下的wine功能恰好相反)。由于nutch是用java编写的在*nix系统上运行了,为了能够在Windows系统上Run,所以就需要cygwin搭建一个*nix系统的模拟环境。

    Cygwin的具体安装过程没什么好说的,下载在安装文件setup.exe后,就点击“下一步”就OK了。只是提醒:cygwin的安装目录需是磁盘根目录,(尽量是默认配置就OK)。


    Step4:安装和配置nutch-1.2

    Nutch-1.2的下载链接:http://archive.apache.org/dist/nutch/(选择:apache-nutch-1.2-bin.zip


    1. 下载完成后将其解压到目录:D:\Code\nutch-1.2(可以自定义)

    2. 运行step3安装的Cygwin;输入命令将当前目录切换至nutch-1.2目录下;
      只需输入cd,然后将nutch-1.2目录拖进cygwin窗口,按下enter

    3. Nutch-1.2的安装测试,在cygwin窗口输入:bin/nutch
      如果出现Usage:nutch[-core] COMMAND等一串信息就表示nutch安装成功。


    Step5:测试nutch-1.2的爬虫功能

    1. 设置系统变量NUTCH_JAVA_HOME
      它的值就是java的安装目录,例如:C:\Java\jdk1.7.0_17

    2. 设置需要抓取的网站主域名。
      Nutch-1.2的安装目录下建立一个名为urls的文件夹,并在文件夹下建立url.txt文件,在文件中写入:http://www.sohu.com/(即要抓取网站的网址,注意最后要加斜杠)。

    3. 设置网站过滤规则。
      编辑conf/crawl-urlfilter.txt文件,修改MY.DOMAIN.NAME部分。

      # accept hosts in MY.DOMAIN.NAME
      +^http://([a-z0-9]*\.)*MY.DOMAIN.NAME/
      改为:
      # accept hosts in MY.DOMAIN.NAME
      +^http://([a-z0-9]*\.)*sohu.com/

    4. 设置代理信息。
      编辑conf/nutch-site.xml文件。在<configuration></configuration>之间添加如下内容:
      <property>

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

    <value>http://www.sohu.com/</value>

    </property>

    <property>

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

    <value>http://www.sohu.com/</value>

    </property>

    <property>

    <name>http.robots.agents</name>

    <value>http://www.sohu.com/</value>

    </property>

    1. 设置代理名
      编辑nutch-1.2\conf\nutch-default.xml文件,找<name>http.agent.name</name>,然后随便设置Value值。例如:

    2. 运行crawl爬虫命令抓取内容

    运行cygwin后,
    a)首先切换进入nutch-1.2的目录;
    b)运行命令:export LANG="zh_CN.GBK"(设置linux环境变量)
    c)运行命令:bin/nutch crawl urls -dir crawled -depth 4 -threads 3-topN 30


    crawl nutch检索数据命令,后面跟上要检索的URL文件;

    -dir指定抓取内容所存放的目录;

    -depth表示以要抓取网站顶级网址为起点的爬行深度;

    -threads指定并发的线程数;

    -topN抓取时每页的最大抓取链接。

    1. 运行结果
      nutch-1.2的目录下多了个crawled目录,下面有文件如下:


    Step6:测试nutch-1.2的检索功能

    主要在Apache-tomcat目录进行操作,以apache-tomcat-7.039为例:

    1. 进入apache-tomcat-7.0.39目录,将webapps/root文件夹重命名或删除。

    2. nutch-1.2目录下的nutch-1.2.war复制到apache-tomcat-7.0.39\webapps目录下,并重命名为:ROOT.war

    3. 启用apache-tomcat,运行\apache-tomcat-7.0.39\bin\startup.bat

    4. 在浏览器中输入http://localhost:8080/

    5. 此时\apache-tomcat-7.0.39\webapps\目录下就会出现一个ROOT文件夹。
      编辑\apache-tomcat-7.0.39\webapps\ROOT\WEB-INF\classes\nutch-site.xml,如下图所示:


      红色框就是“
      step5:测试nutch-1.2的检索功能”中爬虫爬出来的数据文件夹。

    6. 解决中文乱码问题,编辑\apache-tomcat-7.0.39\conf\server.xml文件,找到Connector部分,设置为:

    <Connectorport="8080"

    maxThreads="150"

    minSpareThreads="25"

    maxSpareThreads="75"

    enableLookups="false"

    redirectPort="8443"

    acceptCount="100"

    connectionTimeout="20000"

    disableUploadTimeout="true"

    URIEncoding="UTF-8"

    useBodyEncodingForURI="true"/>

    如下图所示:

    1. 再次启用apache-tomcat重新运行\apache-tomcat-7.0.39\bin\startup.bat

    2. 在浏览器中输入http://localhost:8080/;结果如图所示:

  • 相关阅读:
    Hadoop笔记
    InnoDB存储引擎概述--文件,表,索引,锁,事务的原理与实现
    SpringCloud-Eureka
    spring boot启动报错Error starting ApplicationContext(未能配置数据源)
    SSM框架配置
    SpringMvc笔记
    MySql笔记-->3
    MySql笔记-->2
    MySql笔记 -->1
    C# Lambda表达式
  • 原文地址:https://www.cnblogs.com/java20130722/p/3207079.html
Copyright © 2011-2022 走看看