999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

分布式主題網(wǎng)絡(luò)爬蟲的設(shè)計(jì)與研究

2020-01-04 22:18:28黃宇
科學(xué)技術(shù)創(chuàng)新 2020年15期
關(guān)鍵詞:數(shù)據(jù)處理頁(yè)面

黃宇

(湖北工業(yè)大學(xué)圖書館,湖北 武漢430068)

1 概述

網(wǎng)絡(luò)爬蟲又稱為網(wǎng)絡(luò)蜘蛛, 是按一定規(guī)則自動(dòng)抓取互聯(lián)網(wǎng)上信息的程序,它為搜索引擎的服務(wù)提供數(shù)據(jù)基礎(chǔ),它的性能直接決定著搜索引擎的好壞[1]。目前, 不光搜索引擎會(huì)用網(wǎng)絡(luò)爬蟲, 很多前沿研究領(lǐng)域都需要網(wǎng)絡(luò)爬蟲技術(shù)的支撐。大數(shù)據(jù)分析所需要的海量數(shù)據(jù)需要通過(guò)網(wǎng)絡(luò)爬蟲獲取。金融領(lǐng)域研究所需的大量精準(zhǔn)且實(shí)時(shí)的金融數(shù)據(jù)也需要通過(guò)爬蟲獲取。商戶通過(guò)抓取競(jìng)爭(zhēng)對(duì)手發(fā)布的商品信息調(diào)整自己的營(yíng)銷策略[2],網(wǎng)絡(luò)爬蟲的應(yīng)用已經(jīng)滲透到了各行各業(yè)。

2 主題網(wǎng)絡(luò)爬蟲關(guān)鍵技術(shù)

2.1 主題網(wǎng)絡(luò)爬蟲

網(wǎng)絡(luò)爬蟲是搜索引擎的重要組成部分, 其作用是根據(jù)既定的抓取策略為搜索引擎從互聯(lián)網(wǎng)上抓取數(shù)據(jù), 為用戶檢索提供數(shù)據(jù)基礎(chǔ)。主題網(wǎng)絡(luò)爬蟲在抓取數(shù)據(jù)時(shí)比普通網(wǎng)絡(luò)爬蟲多了兩道處理步驟,分別是頁(yè)面相關(guān)度評(píng)價(jià)與超鏈接相關(guān)度評(píng)估示。網(wǎng)頁(yè)抓取模塊從初始種子鏈接列表中的頁(yè)面開(kāi)始抓取數(shù)據(jù), 網(wǎng)頁(yè)分析模塊對(duì)抓取的數(shù)據(jù)分析后, 由頁(yè)面相關(guān)度評(píng)價(jià)模塊計(jì)算該數(shù)據(jù)是否與領(lǐng)域主題相關(guān),若相關(guān)則將所抓取數(shù)據(jù)過(guò)濾后存入網(wǎng)頁(yè)庫(kù)中,若無(wú)關(guān)則丟棄。與此同時(shí)從所抓取數(shù)據(jù)中提取超鏈接,并對(duì)其進(jìn)行相關(guān)度評(píng)價(jià),若有符合要求則將其按照相關(guān)度的高低排序后存入U(xiǎn)RL 庫(kù)中,等待下一次遍歷。

2.2 目標(biāo)鏈接提取

網(wǎng)絡(luò)爬蟲在網(wǎng)絡(luò)中抓取到相關(guān)頁(yè)面后, 首先提取該網(wǎng)頁(yè)的URL, 接著對(duì)去重后的URL繼續(xù)爬取。但隨著網(wǎng)頁(yè)數(shù)量的劇烈增長(zhǎng),噪聲鏈接也會(huì)隨之增多,若不進(jìn)行去噪,爬蟲將會(huì)耗費(fèi)大量資源在噪聲鏈接上。目標(biāo)鏈接提取的主要任務(wù)有兩個(gè),一個(gè)去除重復(fù)鏈接,另一剔除與內(nèi)容無(wú)關(guān)的鏈接,即噪聲鏈接。

2.2.1 待爬鏈接去重

在網(wǎng)絡(luò)爬蟲爬取資源的過(guò)程中, 會(huì)記錄下所有已爬過(guò)頁(yè)面的URL,當(dāng)有新的URL 時(shí)就會(huì)和這個(gè)集合比較,看看是否存在。在這個(gè)集合很大的時(shí)候,存儲(chǔ)這些URL 會(huì)耗費(fèi)很大的存儲(chǔ)空間,而且比對(duì)時(shí)遍歷過(guò)去,需要相當(dāng)多的時(shí)間和資源。針對(duì)這個(gè)問(wèn)題,可以采用布隆過(guò)濾器來(lái)解決。布隆過(guò)濾器是1970 年由布隆提出的。它實(shí)際上是一個(gè)很長(zhǎng)的二進(jìn)制向量和一系列隨機(jī)映射函數(shù),可以用于檢索一個(gè)元素是否在一個(gè)集合中。它的優(yōu)點(diǎn)是占用的內(nèi)存很少,查詢速度夠快,比一般的算法要好的多,缺點(diǎn)是存在一定的誤判率和刪除困難[3]。

2.2.2 相關(guān)鏈接提取

隨著媒體技術(shù)的不斷發(fā)展, 網(wǎng)頁(yè)上可承載的內(nèi)容類型也越來(lái)越多,比如說(shuō)與內(nèi)容無(wú)關(guān)的聲音、視頻等。若不采用有效的方法對(duì)這部分內(nèi)容即網(wǎng)頁(yè)噪聲進(jìn)行處理, 網(wǎng)絡(luò)爬蟲將會(huì)對(duì)網(wǎng)頁(yè)中所有的噪聲鏈接進(jìn)行爬取,這將極大地浪費(fèi)系統(tǒng)資。為解決這一問(wèn)題,需要網(wǎng)絡(luò)爬蟲能夠識(shí)別網(wǎng)頁(yè)中的噪聲鏈接。目前常用的方法有如下幾種:基于統(tǒng)計(jì)學(xué)的相關(guān)鏈接提取方法、基于DOM樹(shù)的相關(guān)鏈接提取方法、基于機(jī)器學(xué)習(xí)的相關(guān)鏈接提取方法、基于視覺(jué)的噪聲鏈接去除方法等。

2.3 業(yè)務(wù)數(shù)據(jù)緩存技術(shù)

2.3.1 頁(yè)面緩存

頁(yè)面緩存是將動(dòng)態(tài)頁(yè)面直接生成靜態(tài)的頁(yè)面放在服務(wù)器端,用戶調(diào)取相同頁(yè)面時(shí),靜態(tài)頁(yè)面將直接下載到客戶端,不再需要通過(guò)程序的運(yùn)行和數(shù)據(jù)庫(kù)的訪問(wèn),大大降低了服務(wù)器的負(fù)載[4]。網(wǎng)絡(luò)爬蟲在工作過(guò)程中, 需要根據(jù)服務(wù)器傳輸?shù)臄?shù)據(jù)量來(lái)動(dòng)態(tài)申請(qǐng)堆內(nèi)存保存網(wǎng)頁(yè)數(shù)據(jù),以便用于后續(xù)網(wǎng)頁(yè)的分析。常用的內(nèi)存管理模型有ptmalloc、tcmalloc、內(nèi)存池等。

2.3.2 DNS 緩存

DNS 是Domain Name System的縮寫,即域名系統(tǒng)。互聯(lián)網(wǎng)中的主機(jī)都被賦予了統(tǒng)一標(biāo)識(shí)IP 地址, 但I(xiàn)P 地址是一個(gè)32 位二進(jìn)制數(shù)字,不具備良好的可讀性。DNS 將域名和IP 地址相互映射的一個(gè)分布式數(shù)據(jù)庫(kù),能夠使人更方便的訪問(wèn)互聯(lián)網(wǎng),而不用去記住能夠被機(jī)器直接讀取的IP 數(shù)串[5]。由于有了DNS 緩存,網(wǎng)絡(luò)爬蟲不用每次訪問(wèn)頁(yè)面前都進(jìn)行域名解析,這極大地提高了工作效率,減少解析時(shí)間。

3 分布式技術(shù)

分布式是相對(duì)集中式而言。集中式系統(tǒng)是由一臺(tái)或多臺(tái)主計(jì)算機(jī)組成的中心節(jié)點(diǎn),數(shù)據(jù)集中存儲(chǔ)于這個(gè)中心節(jié)點(diǎn)[6],連接它的終端僅用來(lái)輸入和輸出。分布式系統(tǒng)則是依托網(wǎng)絡(luò)建立的一套系統(tǒng)。它是通過(guò)網(wǎng)絡(luò)將多個(gè)類似集中式系統(tǒng)聯(lián)系組織起來(lái),合作完成數(shù)據(jù)處理。分布式系統(tǒng)擁有多種通用的物理和邏輯資源,能夠動(dòng)態(tài)的分配任務(wù),分散的物理和邏輯資源通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)信息交換。目前常用的分布式系統(tǒng)根據(jù)各節(jié)點(diǎn)通信的方式不同,分為主從式、自治式和混合式[7]。主從式架構(gòu)的工作原理是在集群中選取一臺(tái)主機(jī)作為控制節(jié)點(diǎn),負(fù)責(zé)對(duì)集群中其他主機(jī)進(jìn)行管理,其他各主機(jī)是相互獨(dú)立的,彼此進(jìn)行通信必須經(jīng)過(guò)主機(jī)控制節(jié)點(diǎn)。自治式架構(gòu)則是集群中的主機(jī)沒(méi)有主次之分,每臺(tái)主機(jī)既要對(duì)完成數(shù)據(jù)的處理工作,也要完成與其他各節(jié)點(diǎn)進(jìn)行通信的功能。混合式架構(gòu)中的節(jié)點(diǎn)分為控制節(jié)點(diǎn)與數(shù)據(jù)處理節(jié)點(diǎn),控制節(jié)點(diǎn)主要是存儲(chǔ)數(shù)據(jù)處理節(jié)點(diǎn)的狀態(tài)并進(jìn)行作業(yè)分配,數(shù)據(jù)處理節(jié)點(diǎn)則是進(jìn)行數(shù)據(jù)處理與相互通信。

4 分布式主題網(wǎng)絡(luò)爬蟲系統(tǒng)設(shè)計(jì)

4.1 系統(tǒng)架構(gòu)

本系統(tǒng)的架構(gòu)采用的是混合式架構(gòu),控制節(jié)點(diǎn)的任務(wù)主要是存儲(chǔ)數(shù)據(jù)處理節(jié)點(diǎn)的狀態(tài),進(jìn)行各數(shù)據(jù)處理節(jié)點(diǎn)的作業(yè)分配,并對(duì)無(wú)法分配的作業(yè)進(jìn)行集中處理。

系統(tǒng)采用的是最小負(fù)載調(diào)度算法,每次進(jìn)行任務(wù)分配時(shí)總是選取當(dāng)前負(fù)載最小的節(jié)點(diǎn)作為任務(wù)執(zhí)行節(jié)點(diǎn),集群中所有數(shù)據(jù)處理節(jié)點(diǎn)的負(fù)載情況都記錄在控制節(jié)點(diǎn)的負(fù)載狀態(tài)表中。這種算法實(shí)現(xiàn)起來(lái)簡(jiǎn)單高效開(kāi)銷小,因此被許多分布式系統(tǒng)中調(diào)度器所采用。

4.2 系統(tǒng)工作流程

分布式主題網(wǎng)絡(luò)爬蟲系統(tǒng)主要由六個(gè)功能模塊組成,分別是采集模塊、數(shù)據(jù)緩存模塊、分析模塊、提取模塊、存儲(chǔ)模塊以及日志模塊。采集模塊的任務(wù)是主題網(wǎng)絡(luò)爬蟲依據(jù)設(shè)定好的策略在互連網(wǎng)上抓取符合特定條件的頁(yè)面,并從已下載的頁(yè)面中提取與主題相關(guān)度高的鏈接地址加入到待抓取序列中。數(shù)據(jù)緩存模塊的主要功能是臨時(shí)存放抓取的數(shù)據(jù),這些數(shù)據(jù)包括兩部分,網(wǎng)頁(yè)數(shù)據(jù)與DNS數(shù)據(jù),以降低系統(tǒng)地資源消耗,提高數(shù)據(jù)的處理速度。分析模塊主要是對(duì)爬蟲抓取到頁(yè)面進(jìn)行分析,它直接決定主題爬蟲抓取信息的質(zhì)量和準(zhǔn)確率。對(duì)抓取得與主題相關(guān)的頁(yè)面信息,系統(tǒng)將提取頁(yè)面的鏈接、內(nèi)容等主要信息并轉(zhuǎn)化為結(jié)構(gòu)化數(shù)據(jù),以方便下一個(gè)模塊進(jìn)一步處理。存儲(chǔ)模塊是用來(lái)存儲(chǔ)主題網(wǎng)絡(luò)爬蟲所抓取的符合主題的網(wǎng)頁(yè)數(shù)據(jù)。日志模塊是用來(lái)記錄系統(tǒng)中軟硬件的信息,并同時(shí)監(jiān)視系統(tǒng)中發(fā)生事件及各自節(jié)點(diǎn)的負(fù)載情況。當(dāng)發(fā)生錯(cuò)誤時(shí),用戶可以通過(guò)系統(tǒng)日志來(lái)檢查錯(cuò)誤發(fā)生的原意,為后續(xù)的錯(cuò)誤排查提供幫助。分布式主題爬蟲在執(zhí)行數(shù)據(jù)采集任務(wù)時(shí),能同時(shí)對(duì)多個(gè)不同的相關(guān)主題進(jìn)行采集。控制節(jié)點(diǎn)通過(guò)負(fù)載狀態(tài)表給每個(gè)數(shù)據(jù)處理節(jié)點(diǎn)進(jìn)行動(dòng)態(tài)作業(yè)分配,每個(gè)數(shù)據(jù)處理節(jié)點(diǎn)無(wú)需考慮鏈接抓取任務(wù)的去重。此外,系統(tǒng)還能為提供伸縮服務(wù)。在數(shù)據(jù)采集的過(guò)程中,控制節(jié)點(diǎn)判斷現(xiàn)在進(jìn)行的某個(gè)主題數(shù)據(jù)采集資源不夠,需要更多的數(shù)據(jù)處理節(jié)點(diǎn)進(jìn)行工作時(shí),會(huì)將空載或是負(fù)載較低的數(shù)據(jù)處理節(jié)點(diǎn)調(diào)入進(jìn)來(lái)進(jìn)行工作。

5 結(jié)論

信息化時(shí)代,互聯(lián)網(wǎng)的搜索越來(lái)越趨于領(lǐng)域化和多元化,人們對(duì)能夠準(zhǔn)確快速獲取自己想要的信息的需求越來(lái)越強(qiáng)烈,主題網(wǎng)路爬蟲在今后的一段時(shí)間內(nèi)都將是研究熱點(diǎn)。本文設(shè)計(jì)的一種分布式主題爬蟲,在一定程度上提高了搜索引擎的查準(zhǔn)率和查全率,優(yōu)化了系統(tǒng)負(fù)載。但由于技術(shù)水平有限,在新技術(shù)應(yīng)用方面還有所欠缺,這就需要在今后的工作中進(jìn)一步研究。

猜你喜歡
數(shù)據(jù)處理頁(yè)面
微信群聊總是找不到,打開(kāi)這個(gè)開(kāi)關(guān)就好了
大狗熊在睡覺(jué)
刷新生活的頁(yè)面
認(rèn)知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補(bǔ)與極大似然估計(jì)法*
ILWT-EEMD數(shù)據(jù)處理的ELM滾動(dòng)軸承故障診斷
MATLAB在化學(xué)工程與工藝實(shí)驗(yàn)數(shù)據(jù)處理中的應(yīng)用
Matlab在密立根油滴實(shí)驗(yàn)數(shù)據(jù)處理中的應(yīng)用
基于POS AV610與PPP的車輛導(dǎo)航數(shù)據(jù)處理
依托陸態(tài)網(wǎng)的GNSS遠(yuǎn)程數(shù)據(jù)處理軟件開(kāi)發(fā)
同一Word文檔 縱橫頁(yè)面并存
主站蜘蛛池模板: 91福利在线观看视频| 一区二区三区在线不卡免费| 国产成人h在线观看网站站| 综1合AV在线播放| 久久不卡国产精品无码| 亚洲 成人国产| 丁香综合在线| 91精品国产情侣高潮露脸| 在线国产毛片| 亚洲欧美成aⅴ人在线观看 | Aⅴ无码专区在线观看| 欧美一级片在线| 永久免费av网站可以直接看的| 色偷偷男人的天堂亚洲av| 日韩 欧美 小说 综合网 另类| 在线色综合| 欧美亚洲日韩不卡在线在线观看| 青青青国产免费线在| 日韩av高清无码一区二区三区| 久久99精品国产麻豆宅宅| 无码网站免费观看| 在线观看视频99| 色悠久久久| 在线播放国产99re| 国产高潮流白浆视频| 综合天天色| 亚洲黄色激情网站| 午夜小视频在线| 欧美一级在线播放| 亚洲国产成熟视频在线多多| 国产网友愉拍精品视频| 国产精品lululu在线观看| av一区二区无码在线| 久久99国产综合精品女同| 国产激爽大片高清在线观看| 亚洲国产精品一区二区第一页免| 制服丝袜一区二区三区在线| 国产精品性| 91青草视频| 91国内视频在线观看| 欧美色99| 日本欧美一二三区色视频| 色综合日本| 激情無極限的亚洲一区免费| 亚洲综合色区在线播放2019| 国产成人免费高清AⅤ| 欧美亚洲欧美| 亚洲免费福利视频| 国产91熟女高潮一区二区| 国产无码高清视频不卡| 五月天天天色| 国产 在线视频无码| 亚洲第一视频网| 亚洲无码高清一区| 国产亚洲美日韩AV中文字幕无码成人 | 日韩精品中文字幕一区三区| 久久精品无码国产一区二区三区| 老司机精品一区在线视频| 亚洲精品无码抽插日韩| jizz国产在线| 伊人蕉久影院| 国产在线精彩视频二区| 久久国产高清视频| 精品人妻AV区| 国产另类视频| 青草视频免费在线观看| 亚洲美女一级毛片| 亚洲一区国色天香| 欧美亚洲国产视频| 久久毛片网| 亚洲系列无码专区偷窥无码| 激情综合激情| 992tv国产人成在线观看| 无码中字出轨中文人妻中文中| 国产精品毛片一区| 一区二区三区四区在线| 暴力调教一区二区三区| 中文字幕在线永久在线视频2020| 国产小视频免费| 国产成人高清精品免费软件| 真实国产乱子伦视频| 久久久成年黄色视频|