分布式爬蟲任務(wù)調(diào)度與AJAX頁(yè)面抓取研究
發(fā)布時(shí)間:2017-04-20 10:16
本文關(guān)鍵詞:分布式爬蟲任務(wù)調(diào)度與AJAX頁(yè)面抓取研究,,由筆耕文化傳播整理發(fā)布。
【摘要】:隨著互聯(lián)網(wǎng)的迅速發(fā)展,數(shù)據(jù)呈現(xiàn)爆炸性增長(zhǎng),同時(shí)人們對(duì)數(shù)據(jù)的采集需求也與日俱增。網(wǎng)絡(luò)爬蟲作為數(shù)據(jù)獲取的有效手段被廣泛應(yīng)用于各類系統(tǒng)中,諸如搜索引擎、輿情監(jiān)控系統(tǒng)等。然而,面向中小規(guī)模系統(tǒng)的網(wǎng)絡(luò)爬蟲面臨著兩大難題:其一,單機(jī)爬蟲程序抓取速度慢,已有的開源分布式爬蟲框架實(shí)現(xiàn)復(fù)雜,靈活性不強(qiáng);其二,雖然Ajax技術(shù)以異步加載的方式與服務(wù)器交換必要的數(shù)據(jù)能夠提高用戶界面響應(yīng)速度,帶來(lái)良好的用戶體驗(yàn),但是傳統(tǒng)的網(wǎng)頁(yè)抓取方式無(wú)法完整的獲取應(yīng)用了這項(xiàng)技術(shù)的頁(yè)面所包含的信息。這些缺失的信息通常具有重要的研究?jī)r(jià)值。在面向中小規(guī)模系統(tǒng)的分布式爬蟲中,任務(wù)調(diào)度算法的優(yōu)劣將直接影響系統(tǒng)的抓取效率。因此,本文重點(diǎn)對(duì)分布式爬蟲的任務(wù)調(diào)度策略和Ajax頁(yè)面抓取算法進(jìn)行了研究。在分布式爬蟲的任務(wù)調(diào)度方面,本文重點(diǎn)研究了主從式架構(gòu)下的任務(wù)調(diào)度算法。為了保證各個(gè)爬行節(jié)點(diǎn)的負(fù)載均衡以及系統(tǒng)的可擴(kuò)展性,本文提出了一種基于一致性哈希的均分負(fù)載空間算法。該算法采用了不同于機(jī)器節(jié)點(diǎn)復(fù)制的虛擬節(jié)點(diǎn)添加方法,以解決在機(jī)器數(shù)量較少的情況下系統(tǒng)負(fù)載不均衡問題。中心節(jié)點(diǎn)在把握系統(tǒng)整體運(yùn)行狀態(tài)的基礎(chǔ)上采用該算法進(jìn)行任務(wù)調(diào)度,并在爬行節(jié)點(diǎn)發(fā)生變化后進(jìn)行相應(yīng)的任務(wù)調(diào)整。通過實(shí)驗(yàn)比較,驗(yàn)證了該算法在負(fù)載均衡效率方面獲得了提高。在Ajax頁(yè)面抓取方面,由于單個(gè)Ajax頁(yè)面中包含了許多狀態(tài),本文首先采用了經(jīng)典的狀態(tài)流圖對(duì)Ajax頁(yè)面進(jìn)行建模,然后提出了基于網(wǎng)頁(yè)主體內(nèi)容變化的重復(fù)狀態(tài)檢測(cè)算法,并利用該算法進(jìn)行有效元素的XPath特征訓(xùn)練,最后將訓(xùn)練后的結(jié)果應(yīng)用到Ajax頁(yè)面抓取中。通過實(shí)驗(yàn)比較,驗(yàn)證了該方法在保證獲取所有數(shù)據(jù)的情況下能夠進(jìn)一步地減少事件觸發(fā)總數(shù),縮短頁(yè)面抓取所消耗的時(shí)間,提高了Ajax頁(yè)面抓取效率。最后,本文提出了支持Ajax頁(yè)面抓取的分布式爬蟲系統(tǒng)總體設(shè)計(jì)方案,并詳細(xì)介紹了中心節(jié)點(diǎn)和爬行節(jié)點(diǎn)各模塊的實(shí)現(xiàn)細(xì)節(jié)。通過將分布式爬蟲系統(tǒng)成功的應(yīng)用到網(wǎng)絡(luò)輿情監(jiān)控項(xiàng)目中,驗(yàn)證了本文所提出技術(shù)的有效性。
【關(guān)鍵詞】:分布式爬蟲 任務(wù)調(diào)度 一致性哈希 Ajax爬蟲 狀態(tài)流圖模型
【學(xué)位授予單位】:電子科技大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2015
【分類號(hào)】:TP393.092
【目錄】:
- 摘要5-6
- ABSTRACT6-11
- 第一章 緒論11-17
- 1.1 研究背景及意義11-12
- 1.2 國(guó)內(nèi)外研究現(xiàn)狀12-15
- 1.2.1 分布式爬蟲任務(wù)調(diào)度研究現(xiàn)狀12-14
- 1.2.2 Ajax頁(yè)面抓取研究現(xiàn)狀14-15
- 1.3 主要研究?jī)?nèi)容15-16
- 1.4 章節(jié)安排16-17
- 第二章 相關(guān)技術(shù)介紹17-30
- 2.1 分布式爬蟲關(guān)鍵技術(shù)17-23
- 2.1.1 分布式爬蟲系統(tǒng)架構(gòu)18-20
- 2.1.2 任務(wù)調(diào)度策略20-23
- 2.1.3 更新調(diào)度策略23
- 2.2 Ajax爬蟲關(guān)鍵技術(shù)23-29
- 2.2.1 Ajax動(dòng)態(tài)加載技術(shù)23-24
- 2.2.2 Ajax網(wǎng)站建模與抓取策略24-27
- 2.2.3 動(dòng)態(tài)腳本解析27-29
- 2.2.3.1 JavaScript引擎27-28
- 2.2.3.2 嵌入式瀏覽器28-29
- 2.3 本章小結(jié)29-30
- 第三章 基于主從式架構(gòu)的任務(wù)調(diào)度策略30-45
- 3.1 一致性哈希算法30-35
- 3.1.1 一致性哈希的基本概念30-31
- 3.1.2 分布式緩存Memcached的一致性哈希算法實(shí)現(xiàn)31-33
- 3.1.3 一致性哈希算法存在的不足33-35
- 3.2 基于一致性哈希的均分負(fù)載空間算法35-38
- 3.3 基于均分負(fù)載空間算法的任務(wù)調(diào)度策略38-41
- 3.3.1 任務(wù)劃分策略38-39
- 3.3.2 任務(wù)調(diào)度策略39-41
- 3.4 分布式爬蟲負(fù)載均衡性能實(shí)驗(yàn)41-44
- 3.4.1 實(shí)驗(yàn)設(shè)置41
- 3.4.2 實(shí)驗(yàn)結(jié)果與分析41-44
- 3.5 本章小結(jié)44-45
- 第四章 基于狀態(tài)流圖的Ajax頁(yè)面抓取45-62
- 4.1 狀態(tài)流圖模型45-51
- 4.1.1 狀態(tài)流圖定義45-46
- 4.1.2 基于狀態(tài)流圖的深度優(yōu)先抓取算法46-49
- 4.1.3 算法存在的主要不足49-51
- 4.2 算法改進(jìn)51-55
- 4.2.1 基于網(wǎng)頁(yè)主體內(nèi)容的重復(fù)狀態(tài)檢測(cè)51-53
- 4.2.1.1 網(wǎng)頁(yè)主體內(nèi)容提取51-53
- 4.2.1.2 重復(fù)狀態(tài)檢測(cè)53
- 4.2.2 有效元素的XPath特征訓(xùn)練53-55
- 4.2.2.1 頁(yè)面元素的XPath特征53-54
- 4.2.2.2 基于主體內(nèi)容變化的有效元素XPath特征訓(xùn)練54-55
- 4.3 優(yōu)化后的算法55-57
- 4.4 實(shí)驗(yàn)比較57-61
- 4.4.1 實(shí)驗(yàn)設(shè)置57
- 4.4.2 實(shí)驗(yàn)結(jié)果與分析57-61
- 4.5 本章小結(jié)61-62
- 第五章 分布式爬蟲系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)62-74
- 5.1 總體設(shè)計(jì)62
- 5.2 中心節(jié)點(diǎn)的設(shè)計(jì)方案62-66
- 5.2.1 種子URLs管理模塊63
- 5.2.2 心跳監(jiān)測(cè)模塊63-64
- 5.2.3 任務(wù)調(diào)度模塊64-66
- 5.3 爬行節(jié)點(diǎn)的設(shè)計(jì)方案66-70
- 5.3.1 數(shù)據(jù)抓取模塊66-69
- 5.3.1.1 靜態(tài)頁(yè)面抓取模塊67-68
- 5.3.1.2 動(dòng)態(tài)頁(yè)面抓取模塊68
- 5.3.1.3 非爬取范圍內(nèi)的頁(yè)面處理模塊68-69
- 5.3.2 任務(wù)調(diào)整模塊69-70
- 5.3.2.1 任務(wù)轉(zhuǎn)移模塊69-70
- 5.3.2.2 任務(wù)添加模塊70
- 5.3.3 更新調(diào)度模塊70
- 5.4 系統(tǒng)運(yùn)行展示70-71
- 5.5 系統(tǒng)應(yīng)用71-73
- 5.6 本章小結(jié)73-74
- 第六章 總結(jié)與展望74-76
- 6.1 總結(jié)74
- 6.2 展望74-76
- 致謝76-77
- 參考文獻(xiàn)77-81
- 攻讀碩士學(xué)位期間取得的成果81-82
【參考文獻(xiàn)】
中國(guó)期刊全文數(shù)據(jù)庫(kù) 前2條
1 葉允明,于水,馬范援,宋暉,張嶺;分布式Web Crawler的研究:結(jié)構(gòu)、算法和策略[J];電子學(xué)報(bào);2002年S1期
2 袁威;薛安榮;周小梅;;基于Nutch的分布式爬蟲的優(yōu)化研究[J];無(wú)線通信技術(shù);2014年03期
本文關(guān)鍵詞:分布式爬蟲任務(wù)調(diào)度與AJAX頁(yè)面抓取研究,由筆耕文化傳播整理發(fā)布。
本文編號(hào):318458
本文鏈接:http://sikaile.net/guanlilunwen/ydhl/318458.html
最近更新
教材專著