• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于瀏覽器服務(wù)的網(wǎng)絡(luò)爬蟲

      2009-03-14 06:59廖聞劍
      新媒體研究 2009年4期
      關(guān)鍵詞:網(wǎng)絡(luò)爬蟲

      彭 軻 廖聞劍

      [摘要]主要描述支持基于瀏覽器服務(wù)的爬蟲的大體實(shí)現(xiàn)方式,并進(jìn)行相關(guān)測試。

      [關(guān)鍵詞]網(wǎng)絡(luò)爬蟲 Javascript Ajax 瀏覽器服務(wù)

      中圖分類號:TP3文獻(xiàn)標(biāo)識碼:A文章編號:1671-7597(2009)0220050-01

      一、引言

      在這個信息爆炸的時代,從網(wǎng)絡(luò)上尋找自己所需要的信息越來越離不開搜索引擎,這種快捷而便利的方式已越來越受人青睞,而Baidu,Google,Yahoo等搜索引擎的成功標(biāo)志著搜索引擎已不再是IT人士才懂的專有名詞。搜索引擎帶給我們的龐大的信息量和便捷的操作使得復(fù)雜的互聯(lián)網(wǎng)高維網(wǎng)狀結(jié)構(gòu)簡化為平面,平面的中心是信息的使用者,各種信息觸手可及。

      隨著時代的變遷,技術(shù)的進(jìn)步,現(xiàn)今的頁面展現(xiàn)技術(shù)已呈多種多樣的方向發(fā)展,最顯著的進(jìn)步AJAX技術(shù)的問世將傳統(tǒng)的同步式頁面,轉(zhuǎn)變?yōu)楫惒绞巾撁?。給用戶帶來了桌面式的網(wǎng)頁體驗(yàn)。

      人們不再像過去只能面對整體刷新的同步頁面,使得網(wǎng)上遨游更輕松,隨意。但同時這一技術(shù)給搜索引擎帶來了巨大的挑戰(zhàn)。異步頁面,事件觸發(fā)的模式使得傳統(tǒng)的搜索引擎前端(即網(wǎng)絡(luò)爬蟲)無法獲取到全部的網(wǎng)頁信息。于是對JSCrawler或AjaxCrawler的研究逐漸熱門起來。

      大多數(shù)的AjaxCrawler通過包含JS解析器來實(shí)現(xiàn)對Javascript代碼的解析,執(zhí)行等工作,邏輯復(fù)雜,代碼量大。且重復(fù)了許多前人的工作。

      介于DOM解析,JS解析與執(zhí)行是瀏覽器工作的一部分,于是本文采用直接在后臺調(diào)用瀏覽器的方法完成相關(guān)的解析工作。

      二、總體設(shè)計(jì)方案

      一般的JSCrawler通過提取出Javascript代碼,運(yùn)用js解析模塊解析,執(zhí)行,實(shí)際上是對瀏覽器解析工作的裁減,而且在構(gòu)建DOM對象時不但工作量龐大而且還存在很多的隱患,適用范圍比較窄。與其提取或者重寫瀏覽器的某項(xiàng)功能,何不直接將瀏覽器作為網(wǎng)絡(luò)爬蟲的服務(wù)器,讓其解析出頁面中的URIs交付給爬蟲系統(tǒng)進(jìn)行相關(guān)提取工作。而本系統(tǒng)就是基于這個思想設(shè)計(jì)的。如圖1為該模型的總體設(shè)計(jì)方案。

      通過將URL傳遞給BrowseServer獲取初始頁面,接著有BrowseServer

      分析處理頁面準(zhǔn)中的代碼,找到頁面中各個鏈接對應(yīng)的位置,然后通過模擬點(diǎn)擊操作由BrowseServer生成Http post方法,獲取下層或異步傳遞的頁面。

      三、網(wǎng)頁分析流程

      由于有了瀏覽器這個強(qiáng)大的解析工具,網(wǎng)頁分析不再是難題。瀏覽器分析網(wǎng)頁,解析AJAX代碼。生成相應(yīng)的DOM對象及對應(yīng)的URL鏈接。我們從腳本輸出流中提取相應(yīng)鏈接,獲取頁面數(shù)據(jù)即可完成爬取工作。

      模塊流程圖如圖2:

      四、運(yùn)行測試

      如圖2是使用IEServerCrawler爬取網(wǎng)頁某個js網(wǎng)站(www.qolin.com)的測試,為方便后面進(jìn)行對比,因此本系統(tǒng)采用單線程。系統(tǒng)環(huán)境為:

      CPU:P4 3.02G

      系統(tǒng)環(huán)境:WindowXE

      運(yùn)行環(huán)境:Eclipse6.0

      網(wǎng)絡(luò)環(huán)境:電信10M ADSL

      對于普通網(wǎng)站即含有JS代碼較少的網(wǎng)站(www.baidu.com)測試結(jié)果如表1:

      對于JS網(wǎng)站即含有JS代碼較多的網(wǎng)站(qolin.com)測試結(jié)果如表2:

      對于BrowserServerCrawler我們可以看到不管是普通網(wǎng)站還是大型的JS網(wǎng)站,都有不錯的抓取性能。特別是在JS代碼較多的網(wǎng)站上表現(xiàn)出了超過普通爬蟲的優(yōu)勢。但抓取時間的劣勢上卻也同樣是顯著的。

      五、結(jié)束語

      使用IE作為服務(wù)器的設(shè)計(jì)具有強(qiáng)大的JS解析能力能解決單純的JS解析帶來的解析能力單一的問題,但由于啟動IE服務(wù)的耗時,IE解析中包含了太多頁面展示方面的解析問題,使得基于IE服務(wù)的網(wǎng)絡(luò)爬蟲在抓取速度上略有遜色。原因在于瀏覽器的啟動,解析與獲取鏈接無關(guān)的信息方面耗費(fèi)了大量的時間,同時處理普通頁面使用該系統(tǒng)存在極大的資源損耗,而普通頁面在網(wǎng)絡(luò)中依然占有較大的比例。如何設(shè)計(jì)一個在性能和效率上同時出色的AJAX爬蟲還有待我們繼續(xù)研究。

      參考文獻(xiàn):

      [1]Lawrence S,Giles C L.Searching the world wide web.Seience.1998,280:98-100.

      [2]Lin S H,Ho M J.Discovering informative content blocks from Web documents. Proceedings of the Eight ACM SIGKDD International Conference on knowledge Discovery and DataMining.2002.

      [3]Najork M,Heydon A..High-performance Web Crawling.Compaq Systems Researeh Center.2001.

      [4]ChoJ.Crawling the Web:Discovery and maintenance of large-scale Web data.Stanford University, doctoral dissertation,2002.

      [5]ChoJ,Garcia一Molina H.The Evolution of the Web and Implications for an Incremental Crawler Proceedings of 26th Intemational Conference on Very Large Database(VLDB).

      [6]謝正茂,Web數(shù)據(jù)模型以及獲取、存儲方法研究,北京大學(xué),碩士論文.

      [7]印鑒、陳憶群、張鋼,搜索引擎技術(shù)研究與發(fā)展,計(jì)算機(jī)工程,2005(7):54-56.

      [8]賈紅英,網(wǎng)絡(luò)搜索引擎探析[J].情報資料工作,2002,3.

      [9]李曉明、閏宏飛、王繼民,搜索引擎——原理、技術(shù)與系統(tǒng),北京:科學(xué)出版社,2005:30-54.

      [10]張興華,搜索引擎技術(shù)與研究[J].現(xiàn)代情報,2004,(4):142-145.

      [11]邱誠,搜索引擎及其發(fā)展淺析[J].圖書館研究與工作,2002,(2):8-10.

      作者簡介:

      彭軻,男,漢,湖北武漢,碩士研究生,主要研究方向?yàn)橥ㄐ跑浖?/p>

      猜你喜歡
      網(wǎng)絡(luò)爬蟲
      煉鐵廠鐵量網(wǎng)頁數(shù)據(jù)獲取系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      基于社會網(wǎng)絡(luò)分析的權(quán)威網(wǎng)頁挖掘研究
      主題搜索引擎中網(wǎng)絡(luò)爬蟲的實(shí)現(xiàn)研究
      淺析如何應(yīng)對網(wǎng)絡(luò)爬蟲流量
      網(wǎng)絡(luò)爬蟲針對“反爬”網(wǎng)站的爬取策略研究
      杭锦旗| 京山县| 桃源县| 蓝山县| 修水县| 磐石市| 凌云县| 象州县| 诏安县| 大名县| 将乐县| 梨树县| 新乡县| 大石桥市| 蒲城县| 舟山市| 那曲县| 黔南| 射阳县| 嘉黎县| 商水县| 阳曲县| 磴口县| 正镶白旗| 二连浩特市| 抚州市| 通江县| 新巴尔虎右旗| 内丘县| 金门县| 新宾| 宁城县| 成安县| 韶关市| 龙里县| 宜都市| 团风县| 南丹县| 洛扎县| 湖北省| 招远市|