您的位置:首页 > 数据库 > MySQL

Nutch的配置(使用MySQL作为数据存储)

2017-11-27 15:25 190 查看
首先先从http://www.apache.org/dyn/closer.cgi/nutch/下载安装包这里假定nutch的根目录为:${APACHE_NUTCH_HOME}配置${APACHE_NUTCH_HOME}/ivy/ivy.xml,确保Nutch使用MySQL作为数据存储将[html] view plain copy print?<dependency org="org.apache.gora" name="gora-core" rev="0.3" conf="*->default"/>
<dependency org="org.apache.gora" name="gora-core" rev="0.3" conf="*->default"/>
改成[html] view plain copy print?<dependency org="org.apache.gora" name="gora-core" rev="0.2.1" conf="*->default"/>
<dependency org="org.apache.gora" name="gora-core" rev="0.2.1" conf="*->default"/>
取消以下行的注释[html] view plain copy print?<dependency org="org.apache.gora" name="gora-sql" rev="0.1.1-incubating" conf="*->default" />
<dependency org="org.apache.gora" name="gora-sql" rev="0.1.1-incubating" conf="*->default" />
取消以下的行注释使用Mysql作为gora存储[html] view plain copy print?<!-- Uncomment this to use MySQL as database with SQL as Gora store. --><dependency org="mysql" name="mysql-connector-java" rev="5.1.18" conf="*->default"/>
<!-- Uncomment this to use MySQL as database with SQL as Gora store. --><dependency org="mysql" name="mysql-connector-java" rev="5.1.18" conf="*->default"/>
编辑${APACHE_NUTCH_HOME}/conf/gora.properties添加以下代码激活MySQL的配置[html] view plain copy print?################################ MySQL properties ################################gora.sqlstore.jdbc.driver=com.mysql.jdbc.Drivergora.sqlstore.jdbc.url=jdbc:mysql://localhost:3306/nutch?createDatabaseIfNotExist=truegora.sqlstore.jdbc.user=xxxxxgora.sqlstore.jdbc.password=xxxxx
################################ MySQL properties ################################gora.sqlstore.jdbc.driver=com.mysql.jdbc.Drivergora.sqlstore.jdbc.url=jdbc:mysql://localhost:3306/nutch?createDatabaseIfNotExist=truegora.sqlstore.jdbc.user=xxxxxgora.sqlstore.jdbc.password=xxxxx
编辑 ${APACHE_NUTCH_HOME}/conf/gora-sql-mapping.xml ,将主键的长度由512改成767[html] view plain copy print?<primarykey column="id" length="767"/>
<primarykey column="id" length="767"/>
配置${APACHE_NUTCH_HOME}/conf/nutch-site.xml在 http.agent.name字段下增加一个名字,可以是任意值但不能为空! 如果需要的话可以添加额外的语言(例如en为英语),同时也可以设置默认编码格式为utf-8[html] view plain copy print?<property><name>http.agent.name</name><value>YourNutchSpider</value></property><property><name>http.accept.language</name><value>ja-jp, en-us,en-gb,en;q=0.7,*;q=0.3</value><description>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.</description></property><property><name>parser.character.encoding.default</name><value>utf-8</value><description>The character encoding to fall back to when no other informationis available</description></property><property><name>storage.data.store.class</name><value>org.apache.gora.sql.store.SqlStore</value><description>The Gora DataStore class for storing and retrieving data.Currently the following stores are available: ....</description></property>
<property><name>http.agent.name</name><value>YourNutchSpider</value></property><property><name>http.accept.language</name><value>ja-jp, en-us,en-gb,en;q=0.7,*;q=0.3</value><description>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.</description></property><property><name>parser.character.encoding.default</name><value>utf-8</value><description>The character encoding to fall back to when no other informationis available</description></property><property><name>storage.data.store.class</name><value>org.apache.gora.sql.store.SqlStore</value><description>The Gora DataStore class for storing and retrieving data.Currently the following stores are available: ....</description></property>
在命令行下输入
sudo apt-get install ant
安装配置ant在命令行界面使用cd切换到nutch的根目录可以在终端中输入以下指令开始你的第一个爬虫工作
[html] view plain copy print?cd ${APACHE_NUTCH_HOME}/runtime/localmkdir -p urlsecho 'http://nutch.apache.org/' > urls/seed.txt
cd ${APACHE_NUTCH_HOME}/runtime/localmkdir -p urlsecho 'http://nutch.apache.org/' > urls/seed.txt
Nutch 2.2使用以下命令开始爬虫,设置线程数为30[html] view plain copy print?bin/nutch crawl urls -threads 30
bin/nutch crawl urls -threads 30
要查看爬取的数据时,进入数据库中输入以下指令即可查看
mysql -u xxxxx -puse nutch;SELECT * FROM nutch.webpage;
翻译源:http://wiki.apache.org/nutch/#Nutch_2.X_tutorial.28s.29
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: