nutch外掛配置
阿新 • • 發佈:2019-02-14
1. 介紹
參考官方文件 參考楊尚川的部落格,我補充些可能遇到的問題2. 外掛組成
2.1 java原始檔 根據楊尚川部落格修改,然後引入幾個包import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
2.2 plugin.xml
告訴Nutch這個外掛的一些資訊
2.3 build.xml ant編譯外掛<plugin id="parse-jsoup" name="Html Parse Plug-in" version="1.0.0" provider-name="nutch.org"> <runtime> <library name="parse-jsoup.jar"> <export name="*"/> </library> <library name="tagsoup-1.2.1.jar"/> <library name="jsoup-1.7.3.jar"/> </runtime> <requires> <import plugin="nutch-extensionpoints"/> </requires> <extension id="org.apache.nutch.parse.html" name="HtmlParse" point="org.apache.nutch.parse.Parser"> <implementation id="org.apache.nutch.parse.html.HtmlParser" class="org.apache.nutch.parse.html.HtmlParser"> <parameter name="contentType" value="text/html|application/xhtml+xml"/> <parameter name="pathSuffix" value=""/> </implementation> </extension> </plugin>
2.4 ivy.xml 外掛依賴管理<project name="parse-jsoup" default="jar-core"> <import file="../build-plugin.xml"/> <!-- Build compilation dependencies --> <target name="deps-jar"> </target> <!-- Add compilation dependencies to classpath --> <path id="plugin.deps"> <fileset dir="${nutch.root}/build"> </fileset> </path> <!-- Deploy Unit test dependencies --> <target name="deps-test"> <ant target="deploy" inheritall="false" dir="../nutch-extensionpoints"/> </target> </project>
<ivy-module version="1.0"> <info organisation="org.apache.nutch" module="${ant.project.name}"> <license name="Apache 2.0"/> <ivyauthor name="Apache Nutch Team" url="http://nutch.apache.org"/> <description> Apache Nutch </description> </info> <configurations> <include file="../../../ivy/ivy-configurations.xml"/> </configurations> <publications> <!--get the artifact from our module name--> <artifact conf="master"/> </publications> <dependencies> <dependency org="org.ccil.cowan.tagsoup" name="tagsoup" rev="1.2.1"/> <dependency org="org.jsoup" name="jsoup" rev="1.7.3"/> </dependencies> </ivy-module>
具體配置可以看官方文件,也可以看其他外掛是怎麼配的。
3. 修改nutch-site.xml檔案,把外掛加入
<property>
<name>plugin.includes</name>
<value>protocol-http|urlfilter-regex|parse-(html|tika)|index-(basic|anchor)|indexer-solr|scoring-opic|urlnormalizer-(pass|regex|basic)|parse-jsoup</value>
</property>
4. 修改plugin/build.xml,新增你的外掛
<ant dir="parse-jsoup" target="deploy"/>
<ant dir="parse-jsoup" target="test"/>
<ant dir="parse-jsoup" target="clean"/>
5. 修改parse-plugins.xml
<mimeType name="text/html">
<plugin id="parse-jsoup" />
</mimeType>
<alias name="parse-jsoup"
extension-id="org.apache.nutch.parse.html.HtmlParser" />
以前預設是parse-html
6. 重新ant編譯,然後新增在class中新增外掛,注意選擇src/plugin/parse-jsoup/src/java目錄,這樣包名不會有錯誤,並在lib中新增
tagsoup-1.2.1.jar
nekohtml.jar
jsoup-1.7.3.jar
現在你就可以執行crawl,看看結果吧
"content":"由我發起的JAVA開源專案:#APDPlat#應用級產品開發平臺當選為#2013年度優秀開源專案#,在#第八屆開源中國開源世界高峰論壇#上接受頒獎。\n\n雙高證書(系統架構設計師、系統分析師)\n\n“分詞”是語言理解的“前提”嗎?
- 楊尚川的部落格 - ITeye技術網站 http://url.cn/Ly2FJv\n\nAPDPlat中的使用者密碼安全策略 - 楊尚川的部落格 - ITeye技術網站 http://url.cn/OPCBjG\n\nNutch1.7二次開發培訓講義 之 騰訊微博抓取分析 - 楊尚川的部落格 - ITeye技術網站 http://url.cn/Q6wxZ4\n\nNutch1.7二次開發培訓講義 - 楊尚川的部落格 - ITeye技術網站 http://url.cn/KaVgnE\n\n【機器學習視訊教程】“機器學習”是當今的大熱門,“人工智慧”、“大資料”等當今熱門領域都離不開“機器學習”,給大家推薦一套非常棒的機器學習視訊教程(總時長15個半小時,講中文哦)
(分享自 @QQ空間) http://url.cn/UNMwmK\n\nnew一個Object物件佔用多少記憶體? - 楊尚川的部落格 - ITeye技術網站 http://url.cn/JgVRtw\n\n編寫正確的程式往往比一般人想象的難度要大的多,很多時候,程式是碰巧能執行,尤其是在多執行緒的情況下。\n\nJAVA呼叫CSDN介面發博文 - 楊尚川的部落格 - ITeye技術網站 http://url.cn/QQFTvw\n\nCSDN部落格飆升祕籍 - 楊尚川的個人頁面 - 開源中國社群: 網際網路時代,攻防是永恆的主題。為了獲得使用者眼球,搶佔各類排行榜是一種行之有效的方法。本文介紹了一種CSDN部落格飆升祕籍,可在短短一天內超過別人數年的努力。
http://url.cn/Ip0kug\n\nAPDPlat中的機器碼生成機制 - 楊尚川的部落格 - ITeye技術網站 http://url.cn/T31V7e\n\nAPDPlat如何自動建庫建表並初始化資料? - 楊尚川的部落格 - ITeye技術網站 http://url.cn/TJq2R1\n\nAPDPlat的系統啟動和關閉流程剖析 - 楊尚川的部落格 - ITeye技術網站 http://url.cn/VK0qUy\n\nAPDPlat拓展搜尋之整合Solr - 楊尚川的部落格 - ITeye技術網站
http://url.cn/OqgbDq\n\nAPDPlat拓展搜尋之整合ElasticSearch - 楊尚川的部落格 - ITeye技術網站 http://url.cn/P9sSVF\n\nAPDPlat中備份檔案異地容災機制之FTP上傳 - 楊尚川的部落格 - ITeye技術網站 http://url.cn/QgveGd\n\n",
"title":"楊尚川的微博_騰訊微博",
"segment":"20140312152056",
"boost":0.04689394,
"digest":"0c8bed7e9776c890d778bbb705640967",
"tstamp":"2014-03-12T07:21:54.426Z",
"id":"http://t.qq.com/yang-shangchuan/?mode=0",
"url":"http://t.qq.com/yang-shangchuan/?mode=0",
"_version_":1462354646641148000