資源描述:
《基于標(biāo)記模板的分布式網(wǎng)絡(luò)爬蟲(chóng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、分類(lèi)號(hào)學(xué)號(hào)M201676124學(xué)校代碼10487密級(jí)碩士學(xué)位論文基于標(biāo)記模板的分布式網(wǎng)絡(luò)爬蟲(chóng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)學(xué)位申請(qǐng)人:楊林學(xué)科專(zhuān)業(yè):軟件工程指導(dǎo)教師:胡雯薔副教授答辯日期:2018.12.18AThesisSubmittedinPartialFulfillmentoftheRequirementsfortheDegreefortheMasterofEngineeringTheDesignandImplementationofDistributedWebCrawlerSystemBasedonMarkupTemplateCandidate:YangLinMajor:Software
2、EngineeringSupervisor:Assoc.Prof.HuWenqiangHuazhongUniversityofScienceandTechnologyWuhan430074,P.R.ChinaDecember,2018獨(dú)創(chuàng)性聲明本人聲明所呈交的學(xué)位論文是我個(gè)人在導(dǎo)師指導(dǎo)下進(jìn)行的研究工作及取得的研究成果。盡我所知,除文中已經(jīng)標(biāo)明引用的內(nèi)容外,本論文不包含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫(xiě)過(guò)的研宄成果。對(duì)本文的研宄做出貢獻(xiàn)的個(gè)人和集體,均已在文中以明確方式標(biāo)明。本人完全意識(shí)到本聲明的法律結(jié)果由本人承擔(dān)。學(xué)位論文作者簽名:t.曰期:年月曰丨學(xué)位
3、論文版權(quán)使用授權(quán)書(shū)本學(xué)位論文作者完全了解學(xué)校有關(guān)保留、使用學(xué)位論文的規(guī)定,B卩:學(xué)校有權(quán)保,允許論文被查閱和借閱留并向國(guó)家有關(guān)部門(mén)或機(jī)構(gòu)送交論文的復(fù)印件和電子版。本人授權(quán)華中科技大學(xué)可以將本學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。保密□,在年解密后適用本授權(quán)書(shū)。本論文屬于/不保密k上方框“”(請(qǐng)?jiān)谝詢(xún)?nèi)打V)報(bào)論文作者簽名:恭禮騎教臉g:曰期:>丨年,月:曰曰期年'月r曰j7華中科技大學(xué)碩士學(xué)位論文摘要網(wǎng)絡(luò)爬蟲(chóng)的誕生,滿(mǎn)足了人們快速獲取指定網(wǎng)絡(luò)信息的需求。但是傳統(tǒng)網(wǎng)
4、絡(luò)爬蟲(chóng)需要針對(duì)不同網(wǎng)站定制爬蟲(chóng),而開(kāi)發(fā)爬蟲(chóng)程序具有流程多、成本高、難度大、自動(dòng)化程度低等弊端,同時(shí)開(kāi)發(fā)和維護(hù)網(wǎng)絡(luò)爬蟲(chóng)的效率與網(wǎng)站新增和更變速度的懸殊差距,又增加了開(kāi)發(fā)者的負(fù)擔(dān)。針對(duì)這種矛盾,設(shè)計(jì)了基于標(biāo)記模板的分布式網(wǎng)絡(luò)爬蟲(chóng)系統(tǒng)。系統(tǒng)能夠根據(jù)攜帶少量網(wǎng)頁(yè)信息的爬蟲(chóng)模板自動(dòng)生成爬蟲(chóng)實(shí)例,完成采集任務(wù)。系統(tǒng)的目標(biāo)是在減輕爬蟲(chóng)開(kāi)發(fā)難度和減少開(kāi)發(fā)流程的基礎(chǔ)上為網(wǎng)絡(luò)輿情系統(tǒng)提供大量實(shí)時(shí)網(wǎng)絡(luò)數(shù)據(jù)。系統(tǒng)以Scrapy框架為基礎(chǔ)進(jìn)行修改和擴(kuò)展以實(shí)現(xiàn)分布式,主要工作包括以下幾點(diǎn):定義爬蟲(chóng)模板,系統(tǒng)能夠根據(jù)模板描述的采集網(wǎng)站、采集元素、爬蟲(chóng)配置等要素,生成爬蟲(chóng)實(shí)例,執(zhí)行采集任務(wù)。設(shè)計(jì)了一個(gè)基于標(biāo)記的半
5、自動(dòng)化頁(yè)面元素抽取算法,算法以頁(yè)面的XPath以及標(biāo)記信息作為特征,采用聚類(lèi)策略計(jì)算生成抽取規(guī)則,實(shí)現(xiàn)自動(dòng)抽取。實(shí)現(xiàn)了一個(gè)二級(jí)去重方案,將經(jīng)壓縮并設(shè)置有過(guò)期時(shí)間的URL緩存到內(nèi)存作為一級(jí)緩存,并以鍵值對(duì)形式將URL持久化到磁盤(pán)形成二級(jí)去重,在保證不發(fā)生內(nèi)存溢出的基礎(chǔ)上實(shí)現(xiàn)增量采集的快速去重,增加了系統(tǒng)的穩(wěn)定性。通過(guò)封裝頁(yè)面渲染引擎和封裝瀏覽器內(nèi)核兩種方式支持開(kāi)發(fā)者選擇最佳技術(shù)采集動(dòng)態(tài)頁(yè)面。最后,針對(duì)采集數(shù)據(jù)的特點(diǎn),采用自然語(yǔ)言處理等技術(shù)完成對(duì)采集數(shù)據(jù)的清洗任務(wù)?;跇?biāo)記模板的分布式網(wǎng)絡(luò)爬蟲(chóng)系統(tǒng),能夠?qū)崿F(xiàn)大量網(wǎng)站的自動(dòng)采集,減少了開(kāi)發(fā)者開(kāi)發(fā)流程,避免了為單一網(wǎng)站開(kāi)發(fā)爬蟲(chóng)的耗時(shí)和難度,
6、免去了頁(yè)面抽取語(yǔ)法的學(xué)習(xí)成本,解決了單機(jī)爬蟲(chóng)效率低、伸縮性差等問(wèn)題。從測(cè)試結(jié)果可知,系統(tǒng)能夠?qū)崿F(xiàn)對(duì)包括動(dòng)態(tài)頁(yè)面的大量網(wǎng)站的高效的增量采集,有效的降低了開(kāi)發(fā)爬蟲(chóng)的難度和要求,在保證數(shù)據(jù)的準(zhǔn)確性的同時(shí)提高了采集效率。關(guān)鍵詞:分布式網(wǎng)絡(luò)爬蟲(chóng)模板去重頁(yè)面渲染I華中科技大學(xué)碩士學(xué)位論文AbstractWebcrawlersmeettheneedsofpeopletoquicklyobtainthespecifiednetworkinformation.However,traditionalwebcrawlersneedtocustomizecrawlersfordifferentwebsit
7、es.Thedevelopmentofcrawlerprogramshasmanydisadvantagessuchashighprocess,highcost,highdifficulty,andlowautomationAtthesametime,thedisparitybetweentheefficiencyofdevelopingwebcrawlersandthespeedofincreasingandupdatingwebsitesincreasestheb