nutch的一些基礎整理

2021-09-07 15:56:55 字數 2658 閱讀 1778

原創 2023年03月22日 18:18:01

一、關於配置檔案:

nutch-default.xml:爬蟲的預設配置。在$/conf目錄。

nutch-site.xml:理論上是nutch-default.xml的覆蓋。

mapred- default.xml:用於nutch的map-reduce配置。

hdfs-default.xml:用於在 nutch 中實現 dfs。

regex-urlfilter.txt:從seed.txt讀取url和寫入crawldb時,先過regex-pattern。

二、關於表:

1、兩類表webpage和host

2、gora對映放在$/conf目錄gora*.xml檔案

3、使用的資料庫型別在gora.properties檔案中配置,並有對應的對映檔案。

三、種子檔案seed.txt

1、每行乙個種子url,可以自定義任何引數,並存到webpage的metadata欄位。定義nutch.score、nutch.fetchinterval兩個引數時可覆蓋配置檔案裡的db.score.injected、db.fetch.interval.default兩個配置。

2、每次injector時檔案裡的url都會先normalizers再過filter

四、generatorjob

[plain]view plain

copy

print

?usage: generatorjob [-topn n] [-crawlid id] [-nofilter] [-nonorm] [-adddays numdays]  

usage: generatorjob [-topn n] [-crawlid id] [-nofilter] [-nonorm] [-adddays numdays]

2、-crawlid :預設是storage.crawl.id配置

3、-nofilter:不使用過濾器

4、-nonorm:不normalizers url

generat前對url進行normalize後過urlfilters(跟injectorjob裡的是同乙個)。所以,通過dbupdaterjob產生的新行(outlinks)只有在這裡filter掉,以致後邊的步驟不處理,但這些url依然會躺在webpage裡,誰知道那天filter被修改後會不會用到這些url。

五、fetcherjob

[plain]view plain

copy

print

?usage: fetcherjob (| -all) [-crawlid ]  

usage: fetcherjob (| -all) [-crawlid ]
1、-resume:恢復中斷的工作

2、-numtasks:任務數,<1時使用預設值mapred.map.tasks

這個時候只是把任務中可抓取的url進行抓取,並更新資料庫裡的抓取時間及結果、狀態等資料。這時webpage裡有了url頁面的html,並記錄content-encoding、content-type、server(nginx.etc.)、x-via等字段。爬取時產生重定向的url,過urlfilters和db.ignore.external.links後繼續,重定向後的新url作為原url的outlink處理。

六、parserjob

[plain]view plain

copy

print

?usage: parserjob (| -all) [-crawlid ] [-resume] [-force]  

usage: parserjob (| -all) [-crawlid ] [-resume] [-force]
1、-resume:恢復之前未完成的

2、-force:強制重新解析已解析過的頁面

這時對抓取過來的資料進行解析,也就是分析webpage裡content欄位的html,找出outlinks、originalcharencoding、頁面純文字、標題、sig等字段。outlinks進行urlfilters和db.ignore.external.links。

七、dbupdaterjob

1、其實就是根據資料庫的情況更新一些權重字段,例如status、inlinks、markers、metadata、score等

3、www.sitename.com/和www.sitename.com/index.html被視為不同的抓取路徑並產生兩行記錄

八、indexingjob

將webpage中可索引的資料對映到nutchdocument,並扔給索引引擎。

nutch的一些讀取命令

最近在研究nutch,整理了一下關於讀取資源資料的命令。檢視具體的url,以163為例 bin nutch readdb url crawldb url 2.檢視linkdb資料庫的鏈結情況 bin nutch readlinkdb url linkdb url 3.檢視segments bin n...

Mysql的基礎的一些整理1

mysql的一些整理 1.sql的分類 1 ddl data definition language 資料定義語言用來定義資料庫物件 資料庫 表 列等。關鍵字create drop alter等等。2 dml data manipulation language 資料庫操作語言,用來對資料庫的表上的...

CSS一些基礎知識整理

一 關於權值 標籤選擇器 1 類選擇器 10 id選擇器 100 繼承的權值 0.1 文字樣式若被多次設定,則顯示權值最高的設定樣式 例子 p 權值為1 p span 權值為1 1 2 warning 權值為10 p span.warning 權值為1 1 10 12 footer note p 權...