Nutch2.1+mysql+solr3.6.1+中文网站抓取

php中文网
发布: 2016-06-07 15:52:43
原创
1290人浏览过

1、mysql 数据库配置 linux mysql安装步骤省略。 创建数据库与表 [sql] view plaincopyprint? CREATE DATABASE nutch DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; CREATE TABLE `webpage`( `id` varchar (767) CHARACTER SET latin1 NOT N

1、mysql 数据库配置

    linux mysql安装步骤省略。

    创建数据库与表 <br>

   

[sql] view plaincopyprint?

  1. CREATE DATABASE nutch DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;  
  2.   
  3.    CREATE TABLE `webpage` (  
  4.   
  5.        `id` varchar(767) CHARACTER SET latin1 NOT NULL,  
  6.   
  7.        `headers` blob,  
  8.   
  9.        `text` mediumtext DEFAULT NULL,  
  10.   
  11.        `status` int(11) DEFAULT NULL,  
  12.   
  13.        `markers` blob,  
  14.   
  15.        `parseStatus` blob,  
  16.   
  17.        `modifiedTime` bigint(20) DEFAULT NULL,  
  18.   
  19.        `score` float DEFAULT NULL,  
  20.   
  21.        `typ` varchar(32) CHARACTER SET latin1 DEFAULT NULL,  
  22.   
  23.        `baseUrl` varchar(512) CHARACTER SET latin1 DEFAULT NULL,  
  24.   
  25.        `content` mediumblob,  
  26.   
  27.        `title` varchar(2048) DEFAULT NULL,  
  28.   
  29.        `reprUrl` varchar(512) CHARACTER SET latin1 DEFAULT NULL,  
  30.   
  31.        `fetchInterval` int(11) DEFAULT NULL,  
  32.   
  33.        `prevFetchTime` bigint(20) DEFAULT NULL,  
  34.   
  35.        `inlinks` mediumblob,  
  36.   
  37.        `prevSignature` blob,  
  38.   
  39.        `outlinks` mediumblob,  
  40.   
  41.        `fetchTime` bigint(20) DEFAULT NULL,  
  42.   
  43.        `retriesSinceFetch` int(11) DEFAULT NULL,  
  44.   
  45.        `protocolStatus` blob,  
  46.   
  47.        `signature` blob,  
  48.   
  49.        `metadata` blob,  
  50.   
  51.        PRIMARY KEY (`id`)  
  52.   
  53.    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;   
<br><br> 2、安装nutch2.1<br>A、 nutch下载地址:http://apache.etoak.com/nutch/2.1/apache-nutch-2.1-src.zip

    下载完成后家压缩, <br>

B、以下将nutch的根目录定位${APACHE_NUTCH_HOME}.

C、配置nutch对mysql的支持,修改${APACHE_NUTCH_HOME}/ivy/ivy.xml文件

    将这行的注释取消default”/>

    修改${APACHE_NUTCH_HOME}/conf/gora.properties文件,

        注释默认存储配置 <br><br>

[html] view plaincopyprint?

  1. ###############################  
  2.   
  3.    # Default SqlStore properties #  
  4.    ###############################  
  5.    #gora.sqlstore.jdbc.driver=org.hsqldb.jdbc.JDBCDriver  
  6.    #gora.sqlstore.jdbc.url=jdbc:hsqldb:hsql://localhost/nutchtest  
  7.    #gora.sqlstore.jdbc.user=sa  
  8.    #gora.sqlstore.jdbc.password=  
  9.   
  10.        取消以下代码注释,  
  11.   
  12.    ###############################  
  13.    # MySQL properties             
  14.     ################################  
  15.   
  16.    gora.sqlstore.jdbc.driver=com.mysql.jdbc.Driver  
  17.   
  18.    gora.sqlstore.jdbc.url=jdbc:mysql://localhost:3306/nutch?createDatabaseIfNotExist=true  
  19.   
  20.    gora.sqlstore.jdbc.user=xxxxx(mysql用户名)  
  21.   
  22.    gora.sqlstore.jdbc.password=xxxxx(mysql密码)  
<br><br>

<br>

       D、修改${APACHE_NUTCH_HOME}/conf/nutch-site.xml 加入如下代码:

[html] view plaincopyprint?     http.agent.name    Your Nutch Spider            http.accept.language    ja-jp, en-us,en-gb,en;q=0.7,*;q=0.3    Value of the “Accept-Language” request header field.    This allows selecting non-English language as default one to retrieve.    It is a useful setting for search engines build for certain national group.                parser.character.encoding.default    utf-8    The character encoding to fall back to when no other information    is available            storage.data.store.class    org.apache.gora.sql.store.SqlStore    The Gora DataStore class for storing and retrieving data.    Currently the following stores are available: ….          
E、使用ant编译  ${APACHE_NUTCH_HOME} 。

<br>

F、设置待抓取的网站

    cd ${APACHE_NUTCH_HOME}/runtime/local <br>     mkdir -p urls <br>     echo 'http://nutch.apache.org/' > urls/seed.txt

G、执行爬行操作: bin/nutch crawl urls -depth 3 -topN 5

    执行完在mysql中即可以查看到爬虫抓取的内容

Onlook
Onlook

专为前端设计师和开发者打造的视觉编辑工具

Onlook 108
查看详情 Onlook

<br>

3、安装solr,对nutch抓取的内容进行索引

    (注意:参考资料中推荐使用solr4.0版本,4.0的两个版本我都试了,没有成功,所以替换为3.6.1版本) <br>

     solr下载地址:http://www.fayea.com/apache-mirror/lucene/solr/3.6.1/apache-solr-3.6.1.zip

<br>

    A、解压缩下载包,

    B、下载  http://nlp.solutions.asia/wp-content/uploads/2012/08/schema.xml替换${APACHE_SOLR_HOME}/example/solr/conf/schema.xml.

    C、启动solr 

        cd ${APACHE_SOLR_HOME}/example

    java -jar start.jar

    <strong>D</strong>、在浏览器输入地址http://localhost:8983/solr  测试是否启动成功。

        E、另起linux终端,输入如下命令,使solr对nutch抓取内容进行索引。<br>

            cd ${APACHE_NUTCH_HOME}/runtime/local/

      bin/nutch solrindex http://127.0.0.1:8983/solr/ -reindex

4、测试

    在浏览器输入   http://localhost:8983/solr  ,看到如下界面:

<br>Nutch2.1+mysql+solr3.6.1+中文网站抓取<br>

在文本框中输入 content:nutch 点击查询,便可查处内容中包含nutch关键字的网页 

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号