教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

爬蟲(chóng)分類分析:網(wǎng)絡(luò)爬蟲(chóng)有哪些分類?

更新時(shí)間:2020年09月18日15時(shí)28分 來(lái)源:傳智播客 瀏覽次數(shù):

通用爬蟲(chóng)和聚焦爬蟲(chóng)

根據(jù)使用場(chǎng)景,網(wǎng)絡(luò)爬蟲(chóng)可分為通用爬蟲(chóng)和聚焦爬蟲(chóng)兩種。通用爬蟲(chóng)是捜索引擎抓取系統(tǒng)(Baidu、Google、Yahoo等)的重要組成部分,主要目的是將互聯(lián)網(wǎng)上的網(wǎng)頁(yè)下載到本地,形成一個(gè)互聯(lián)網(wǎng)內(nèi)容的鏡像備份。聚焦爬蟲(chóng),是“面向特定主題需求”的一種網(wǎng)絡(luò)爬蟲(chóng)程序。接下來(lái),就對(duì)這兩種爬蟲(chóng)分別進(jìn)行介紹。

1. 通用爬蟲(chóng)

通用爬蟲(chóng)又稱全網(wǎng)爬蟲(chóng)(Scalable Web Crawler),它將爬取對(duì)象從一些種子 URL擴(kuò)充到整個(gè)Web上的網(wǎng)站,主要用途是為門(mén)戶站點(diǎn)搜索引擎和大型Web服務(wù)提供商采集數(shù)據(jù)。

這類網(wǎng)絡(luò)爬蟲(chóng)的爬行范圍和數(shù)量巨大,對(duì)于爬行速度和存儲(chǔ)空間要求較高,對(duì)于爬行頁(yè)面的順序要求相對(duì)較低,同時(shí)由于待刷新的頁(yè)面太多,通常采用并行工作方式,但需要較長(zhǎng)時(shí)間才能刷新一次頁(yè)面。

2. 聚焦爬蟲(chóng)

聚焦爬蟲(chóng)(Focused Crawler),又稱主題網(wǎng)絡(luò)爬蟲(chóng)(Topical Crawler),是指選擇性地爬行那些與預(yù)先定義好的主題相關(guān)的頁(yè)面的網(wǎng)絡(luò)爬蟲(chóng)。

和通用爬蟲(chóng)相比,聚焦爬蟲(chóng)只需要爬行與主題相關(guān)的頁(yè)面,從而極大地節(jié)省了硬件和網(wǎng)絡(luò)資源,保存的頁(yè)面也由于數(shù)量少而更新快,還可以很好地滿足一些特定人群對(duì)特定領(lǐng)域信息的需求。

累積式和增量式爬蟲(chóng)

根據(jù)爬取形式不同,可將爬蟲(chóng)分為累積式爬蟲(chóng)和增量式爬蟲(chóng)。

1. 累積式爬蟲(chóng)

累積式爬蟲(chóng)是指從某一個(gè)時(shí)間點(diǎn)開(kāi)始,通過(guò)遍歷的方式抓取系統(tǒng)所能允許存儲(chǔ)和處理的所有網(wǎng)頁(yè)。在理想的軟硬件環(huán)境下,經(jīng)過(guò)足夠的運(yùn)行時(shí)間,累積式抓取的策略可以保證抓取到相當(dāng)規(guī)模的網(wǎng)頁(yè)集合。但由于Web數(shù)據(jù)的動(dòng)態(tài)特性,集合中網(wǎng)頁(yè)的被抓取時(shí)間點(diǎn)是不同的,頁(yè)面被更新的情況也不同,因此累積式抓取到的網(wǎng)頁(yè)集合事實(shí)上并無(wú)法與真實(shí)環(huán)境中的網(wǎng)絡(luò)數(shù)據(jù)保持一致。

2. 增量式爬蟲(chóng)

增量式網(wǎng)絡(luò)爬蟲(chóng)(Incremental Web Crawler)是指在具有一定量規(guī)模的網(wǎng)絡(luò)頁(yè)面集合的基礎(chǔ)上,采用更新數(shù)據(jù)的方式選取已有集合中的過(guò)時(shí)網(wǎng)頁(yè)進(jìn)行抓取,以保證所抓取到的數(shù)據(jù)與真實(shí)網(wǎng)絡(luò)數(shù)據(jù)足夠接近。進(jìn)行增量式抓取的前提是,系統(tǒng)已經(jīng)抓取了足夠數(shù)量的網(wǎng)絡(luò)頁(yè)面,并具有這些頁(yè)面被抓取的時(shí)間信息。

和周期性爬行和刷新頁(yè)面的網(wǎng)絡(luò)爬蟲(chóng)相比,增量式爬蟲(chóng)只會(huì)在需要的時(shí)候爬行新產(chǎn)生或發(fā)生更新的頁(yè)面,并不重新下載沒(méi)有發(fā)生變化的頁(yè)面,可有效減少數(shù)據(jù)下載量,及時(shí)更新已爬行的網(wǎng)頁(yè),減小時(shí)間和空間上的耗費(fèi),但是增加了爬行算法的復(fù)雜度和實(shí)現(xiàn)難度。

面向?qū)嶋H應(yīng)用環(huán)境的網(wǎng)絡(luò)蜘蛛設(shè)計(jì)中,通常既包括累積式抓取,也包括增量式抓取的策略。累積式抓取一般用于數(shù)據(jù)集合的整體建立或大規(guī)模更新階段;而增量式抓取則主要針對(duì)數(shù)據(jù)集合的日常維護(hù)與即時(shí)更新。

表層爬蟲(chóng)和深層爬蟲(chóng)

Web 頁(yè)面按存在方式可以分為表層網(wǎng)頁(yè)(Surface Web)和深層網(wǎng)頁(yè)(Deep Web,也稱 Invisible Web Pages 或 Hidden Web)。針對(duì)這兩種網(wǎng)頁(yè)的爬蟲(chóng)分別叫做表層爬蟲(chóng)和深層爬蟲(chóng)。

1. 表層爬蟲(chóng)

爬取表層網(wǎng)頁(yè)的爬蟲(chóng)叫做表層爬蟲(chóng)。表層網(wǎng)頁(yè)是指?jìng)鹘y(tǒng)搜索引擎可以索引的頁(yè)面,以超鏈接可以到達(dá)的靜態(tài)網(wǎng)頁(yè)為主構(gòu)成的Web頁(yè)面。

2. 深層爬蟲(chóng)

爬取深層網(wǎng)頁(yè)的爬蟲(chóng)就叫做深層爬蟲(chóng)。深層網(wǎng)頁(yè)是那些大部分內(nèi)容不能通過(guò)靜態(tài)鏈接獲取的、隱藏在搜索表單后的,只有用戶提交一些關(guān)鍵詞才能獲得的 Web 頁(yè)面。例如那些用戶注冊(cè)后內(nèi)容才可見(jiàn)的網(wǎng)頁(yè)就屬于 Deep Web。

與表層網(wǎng)頁(yè)相比,深層網(wǎng)頁(yè)上的數(shù)據(jù)爬取更加困難,要采用一定的附加策略才能夠自動(dòng)爬取。

深層爬蟲(chóng)爬行過(guò)程中最重要部分就是表單填寫(xiě),包含兩種類型:

(1)基于領(lǐng)域知識(shí)的表單填寫(xiě):此方法一般會(huì)維持一個(gè)本體庫(kù),通過(guò)語(yǔ)義分析來(lái)選取合適的關(guān)鍵詞填寫(xiě)表單。

(2)基于網(wǎng)頁(yè)結(jié)構(gòu)分析的表單填寫(xiě):此方法一般無(wú)領(lǐng)域知識(shí)或僅有有限的領(lǐng)域知識(shí),將網(wǎng)頁(yè)表單表示成DOM樹(shù),從中提取表單各字段值。


猜你喜歡:
Python爬蟲(chóng)視頻教程:Python爬蟲(chóng)項(xiàng)目教程下載

python爬蟲(chóng)可以用來(lái)做什么?

Python爬蟲(chóng)數(shù)據(jù)如何寫(xiě)入Execl文件并生成圖表?

python爬蟲(chóng)視頻教程

0 分享到:
和我們?cè)诰€交談!