爬蟲(chóng)框架是什么
爬蟲(chóng)系統(tǒng)首先從互聯(lián)網(wǎng)頁(yè)面中精心選擇一部分網(wǎng)頁(yè),以這些網(wǎng)頁(yè)的鏈接地址作為種子URL,將這些種子放入待抓取URL隊(duì)列中,爬蟲(chóng)從待抓取URL隊(duì)列依次讀取,并將URL通過(guò)DNS解析,把鏈接地址轉(zhuǎn)換為網(wǎng)站服務(wù)器對(duì)應(yīng)的IP地址。
然后將其和網(wǎng)頁(yè)相對(duì)路徑名稱交給網(wǎng)頁(yè)下載器,網(wǎng)頁(yè)下載器負(fù)責(zé)頁(yè)面的下載。
對(duì)于下載到本地的網(wǎng)頁(yè),一方面將其存儲(chǔ)到頁(yè)面庫(kù)中,等待建立索引等后續(xù)處理;另一方面將下載網(wǎng)頁(yè)的URL放入已抓取隊(duì)列中,這個(gè)隊(duì)列記錄了爬蟲(chóng)系統(tǒng)已經(jīng)下載過(guò)的網(wǎng)頁(yè)URL,以避免系統(tǒng)的重復(fù)抓取。
對(duì)于剛下載的網(wǎng)頁(yè),從中抽取出包含的所有鏈接信息,并在已下載的URL隊(duì)列中進(jìn)行檢查,如果發(fā)現(xiàn)鏈接還沒(méi)有被抓取過(guò),則放到待抓取URL隊(duì)列的末尾。在之后的抓取調(diào)度中會(huì)下載這個(gè)URL對(duì)應(yīng)的網(wǎng)頁(yè)。
如此這般,形成循環(huán),直到待抓取URL隊(duì)列為空,這代表著爬蟲(chóng)系統(tǒng)將能夠抓取的網(wǎng)頁(yè)已經(jīng)悉數(shù)抓完,此時(shí)完成了一輪完整的抓取過(guò)程。
爬蟲(chóng)框架有哪些
1、神箭手云爬蟲(chóng)框架
是一個(gè)免費(fèi)的網(wǎng)絡(luò)爬蟲(chóng)框架,為開(kāi)發(fā)者提供成套的開(kāi)發(fā)教程和開(kāi)發(fā)工具,為企業(yè)提供專業(yè)化的數(shù)據(jù)抓取、數(shù)據(jù)實(shí)時(shí)監(jiān)控和數(shù)據(jù)分析服務(wù)。
最大的特點(diǎn)是一站式服務(wù),通過(guò)底層框架簡(jiǎn)化了網(wǎng)絡(luò)爬蟲(chóng)開(kāi)發(fā)難度,而且提供了豐富的開(kāi)源網(wǎng)絡(luò)爬蟲(chóng)資源。
2、Nutch
這是一個(gè)開(kāi)源Java實(shí)現(xiàn)的搜索引擎,提供了我們運(yùn)行自己的搜索引擎所需的全部工具,包括全文搜索和Web爬蟲(chóng)。Nutch目前最新的版本為versionv2.3。
3、Crawler4j
Crawler4j是一個(gè)開(kāi)源的Java類庫(kù)提供一個(gè)用于抓取Web頁(yè)面的簡(jiǎn)單接口??梢岳盟鼇?lái)構(gòu)建一個(gè)多線程的Web爬蟲(chóng)。
4、WebMagic
WebMagic是一個(gè)簡(jiǎn)單靈活的Java爬蟲(chóng)框架。
它的特性包括:簡(jiǎn)單的API,可快速上手;模塊化的結(jié)構(gòu),可輕松擴(kuò)展;提供多線程和分布式支持
5、Heritrix
這是一個(gè)由java開(kāi)發(fā)的、開(kāi)源的網(wǎng)絡(luò)爬蟲(chóng),用戶可以使用它來(lái)從網(wǎng)上抓取想要的資源。其最出色之處在于它良好的可擴(kuò)展性,方便用戶實(shí)現(xiàn)自己的抓取邏輯。
-
爬蟲(chóng)
+關(guān)注
關(guān)注
0文章
83瀏覽量
7505
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論