全國咨詢/投訴熱線:400-618-4000

爬蟲分類分析:網絡爬蟲有哪些分類?

更新時間:2020年09月18日15時28分 來源:傳智播客 瀏覽次數:

通用爬蟲和聚焦爬蟲

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

1. 通用爬蟲

通用爬蟲又稱全網爬蟲(Scalable Web Crawler),它將爬取對象從一些種子 URL擴充到整個Web上的網站,主要用途是為門戶站點搜索引擎和大型Web服務提供商采集數據。

這類網絡爬蟲的爬行范圍和數量巨大,對于爬行速度和存儲空間要求較高,對于爬行頁面的順序要求相對較低,同時由于待刷新的頁面太多,通常采用并行工作方式,但需要較長時間才能刷新一次頁面。

2. 聚焦爬蟲

聚焦爬蟲(Focused Crawler),又稱主題網絡爬蟲(Topical Crawler),是指選擇性地爬行那些與預先定義好的主題相關的頁面的網絡爬蟲。

和通用爬蟲相比,聚焦爬蟲只需要爬行與主題相關的頁面,從而極大地節省了硬件和網絡資源,保存的頁面也由于數量少而更新快,還可以很好地滿足一些特定人群對特定領域信息的需求。

累積式和增量式爬蟲

根據爬取形式不同,可將爬蟲分為累積式爬蟲和增量式爬蟲。

1. 累積式爬蟲

累積式爬蟲是指從某一個時間點開始,通過遍歷的方式抓取系統所能允許存儲和處理的所有網頁。在理想的軟硬件環境下,經過足夠的運行時間,累積式抓取的策略可以保證抓取到相當規模的網頁集合。但由于Web數據的動態特性,集合中網頁的被抓取時間點是不同的,頁面被更新的情況也不同,因此累積式抓取到的網頁集合事實上并無法與真實環境中的網絡數據保持一致。

2. 增量式爬蟲

增量式網絡爬蟲(Incremental Web Crawler)是指在具有一定量規模的網絡頁面集合的基礎上,采用更新數據的方式選取已有集合中的過時網頁進行抓取,以保證所抓取到的數據與真實網絡數據足夠接近。進行增量式抓取的前提是,系統已經抓取了足夠數量的網絡頁面,并具有這些頁面被抓取的時間信息。

和周期性爬行和刷新頁面的網絡爬蟲相比,增量式爬蟲只會在需要的時候爬行新產生或發生更新的頁面,并不重新下載沒有發生變化的頁面,可有效減少數據下載量,及時更新已爬行的網頁,減小時間和空間上的耗費,但是增加了爬行算法的復雜度和實現難度。

面向實際應用環境的網絡蜘蛛設計中,通常既包括累積式抓取,也包括增量式抓取的策略。累積式抓取一般用于數據集合的整體建立或大規模更新階段;而增量式抓取則主要針對數據集合的日常維護與即時更新。

表層爬蟲和深層爬蟲

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

1. 表層爬蟲

爬取表層網頁的爬蟲叫做表層爬蟲。表層網頁是指傳統搜索引擎可以索引的頁面,以超鏈接可以到達的靜態網頁為主構成的Web頁面。

2. 深層爬蟲

爬取深層網頁的爬蟲就叫做深層爬蟲。深層網頁是那些大部分內容不能通過靜態鏈接獲取的、隱藏在搜索表單后的,只有用戶提交一些關鍵詞才能獲得的 Web 頁面。例如那些用戶注冊后內容才可見的網頁就屬于 Deep Web。

與表層網頁相比,深層網頁上的數據爬取更加困難,要采用一定的附加策略才能夠自動爬取。

深層爬蟲爬行過程中最重要部分就是表單填寫,包含兩種類型:

(1)基于領域知識的表單填寫:此方法一般會維持一個本體庫,通過語義分析來選取合適的關鍵詞填寫表單。

(2)基于網頁結構分析的表單填寫:此方法一般無領域知識或僅有有限的領域知識,將網頁表單表示成DOM樹,從中提取表單各字段值。


猜你喜歡:
Python爬蟲視頻教程:Python爬蟲項目教程下載

python爬蟲可以用來做什么?

Python爬蟲數據如何寫入Execl文件并生成圖表?

python爬蟲視頻教程

彩票大奖得主家破人亡 快乐扑克3豹子技巧 股票配资广州 青海快三投注 五分彩软件app最新 安徽快三中奖多少钱 幸运赛车开奖视频直播 际银配资 广东十一选五走势图 广东好彩1开奖结果什么时间晚上什么时候 兰州期货配资 重庆时时彩计划软件器 黑龙江30选七开奖号 怎么炒股才能赚到钱 云南11选五走势图昨天 人力资源配置内容 12浙江十二走势图