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

網(wǎng)絡蜘蛛技術在校園門戶網(wǎng)站中的設計與研究

2012-12-31 00:00:00
科技創(chuàng)新導報 2012年9期

摘要:本文主要對當今較為流行的網(wǎng)絡編程技術網(wǎng)絡蜘蛛(web spider),結合校園網(wǎng)站實際環(huán)境進行一次嘗試與研究。使用C#語言進行設計與開發(fā),在實際開發(fā)設計中通過解決其各類難題,進一步掌握其設計難點與要領,并對該技術有了進一步了解。

關鍵詞:網(wǎng)絡蜘蛛(web spider) 校園門戶 多線程

中圖分類號:P209 文獻標識碼:A文章編號:1674-098X(2012)3(c)-0000-00

在互聯(lián)網(wǎng)高速發(fā)展的今天,互聯(lián)網(wǎng)已經(jīng)走進了千家萬戶,網(wǎng)絡上充斥著各種信息。如何高效、準確的獲取我們所需要的信息,成為我們越來越關心的問題。搜索引擎是解決這一問題的主要方法。搜索引擎通過一定的策略在網(wǎng)絡中搜集信息,并完成對信息的提取和組織工作,最終為用戶提供信息信息檢索服務。搜索引擎主要包含三部分功能,信息采集、信息分類、信息檢索。其中信息采集又叫網(wǎng)絡蜘蛛(web Spider),主要用來獲取網(wǎng)絡上的信息內(nèi)容。搜索引擎中的所有數(shù)據(jù)都是通過它來獲得的。

在校園門戶網(wǎng)站中也會用到網(wǎng)絡蜘蛛技術。與搜素引擎不同,校園門戶網(wǎng)站中的網(wǎng)絡蜘蛛所選取信息的范圍僅限定在本局域網(wǎng)內(nèi)部。信息量相對較少。通過網(wǎng)絡爬蟲技術,學校門戶網(wǎng)站可以實現(xiàn)網(wǎng)絡動態(tài)監(jiān)視,對網(wǎng)絡中的不良信息進行及時篩查。也可以建立學校內(nèi)部的網(wǎng)絡智能搜索引擎,或是校內(nèi)網(wǎng)絡雷達。而這些都要依靠校園門戶網(wǎng)站的網(wǎng)絡蜘蛛技術。

1 網(wǎng)絡蜘蛛的搜索策略及c#開發(fā)環(huán)境介紹

1.1 通用的網(wǎng)絡蜘蛛爬行策略主要有兩種方式:

(1)深度優(yōu)先策略:深度優(yōu)先就是只考慮連接的層次關系,將鏈接看成樹形結構,深度優(yōu)先搜索就是先訪問鏈接的一個分支,在回到鏈接樹的根節(jié)點訪問另一個分支。這種方式有點在于容易設計以及可以及時搜索到某個鏈接下足夠深度的鏈接,缺點是個別層次較高的鏈接不能夠及時被訪問,甚至訪問不到,信息更新不及時。

(2)寬度優(yōu)先策略:寬度優(yōu)先就是以接近起始點的程度依次擴展節(jié)點的逐層搜索,在對下一層的任意節(jié)點進行搜索之前,必須完成本層的所有節(jié)點。此方法實現(xiàn)相對簡單,缺點在于隨著抓取頁面逐漸增多,大量的無關頁面被下載,使得算法的效率變低。優(yōu)點在于搜索的頁面質(zhì)量較高。信息相對完整。

目前網(wǎng)絡蜘蛛技術中通常采用寬度優(yōu)先策略,從一個局部中盡可能得到多的頁面。多數(shù)搜索引擎都采用寬度搜索技術,主要解決數(shù)據(jù)采集的及時性,和完整性問題。但信息采集量不能太多,否則將會影響采集效率。

1.2 C#開發(fā)環(huán)境

C#是微軟發(fā)布的開發(fā)平臺.NET中的旗艦,是一種優(yōu)秀的編程語言,c#2.0開發(fā)環(huán)境中集成了多線程并發(fā)訪問及http頁面抓取技術。因此使我們網(wǎng)頁爬蟲技術可以使用c#語言進行開發(fā)。需要使用到System.Threading包,和System.Net包。

2 設計與實現(xiàn)

2.1 網(wǎng)絡蜘蛛工作流程

首次運行蜘蛛程序需要根據(jù)起始網(wǎng)頁,分析頁面的源文件,將頁面路徑(URL)放入隊列,把已處理過的頁面放入已完成隊列中。而后工作線程從待提取隊列中提取出新的URL進行分析。依次循環(huán)。

若系統(tǒng)不是首次運行,系統(tǒng)不用指定起始頁面,只需讀取保存在文本中的信息,然后繼續(xù)上次提取操作,從待抓取列表中取出連接繼續(xù)執(zhí)行。

2.2 網(wǎng)頁消重

網(wǎng)絡爬蟲的爬行策略中的寬度優(yōu)先策略是目前普遍采取的一種網(wǎng)頁檢索策略,優(yōu)點是頁面檢索質(zhì)量較高,但其弊端就是頁面重復檢索較多。如果信息檢索范圍加大,將嚴重影響信息的檢索效率。重復的頁面不僅浪費時間,而且會擠占磁盤空間。

目前較為流行的做法是使用布隆過濾器的方法來對網(wǎng)頁鏈接進行消重。在網(wǎng)絡蜘蛛系統(tǒng)中,一個地址是否被訪問過,最直接的方法就是將集合中全部的元素存在計算機中,當進入一個新元素時,將它與其他元素進行比較,優(yōu)點是十分準確,缺點是時間較長。布隆過濾器一般用于大數(shù)據(jù)量的集合中判斷元素是否存在,其核心思想就是使用一個hash函數(shù)將一個url地址映射到位圖數(shù)組中某一位,如果該位已經(jīng)存在則為1,表示該url已被占。

哈希算法如下:

private void CreateHashes(string str)

{

int hash1 = str.GetHashCode();

int hash2 = HashString(str);

hashKeys[0] = Math.Abs(hash1 % hashbits.Count);

if (numKeys > 1)

{

for (int i = 1; i < numKeys; i++)

{

hashKeys[i] = Math.Abs((hash1 + (i * hash2))

% hashbits.Count);

}

}

}

2.3 html解析

Html解析器是用來分析蜘蛛程序遇到的每一個頁面,提取其中的鏈接信息,是頁面下載的前提。解析器的作用是識別HTML語言的各種標記。具體代碼如下:

public string GetPageSource(string url)

{

Uri uri = new Uri(url);

HttpWebRequest MyReq = (HttpWebRequest)WebRequest.Create(uri);

HttpWebResponse MyRes = (HttpWebResponse)MyReq.GetResponse();

MyReq.Method = \"Post\";

MyReq.KeepAlive = 1;

StreamReader reader = new StreamReader(MyRes.GetResponseStream(), System.Text.Encoding.GetEncoding(\"GB2312\"));

return reader.ReadToEnd();

}

上述代碼的主要作用是獲取頁面的HTML代碼,并將其轉化成字符串輸出。

2.4 多線程

多線程技術主要作用是同時開動多個線程一起工作,共同采集網(wǎng)絡中的數(shù)據(jù)信息。提高信息采集的效率。多線程的工作問題的難點就是線程結束是很難判斷。因為它總是在查找新的鏈接,因此系統(tǒng)容易進入死循環(huán)狀態(tài)。解決方法如下所示:

string url = \"\";

int times = 0;

while ( url == \"\" ) //要是沒有找到符合條件的記錄,則不斷地尋覓符合條件的記錄

{

url = getUrl.GetAUrl( …… ); //調(diào)用GetAUrl方法,試圖得到一個url值

if ( url == \"\" ) //要是沒有找到

{

times ++;//嘗試次數(shù)自增

continue; //進行下一次嘗試

}

if ( times > N ) //要是已經(jīng)嘗試夠了次數(shù),則退出進程

{

downloadThread[i].Abort; //退出進程

}

else//如果沒有嘗試夠次數(shù)

{

Times = 0; //嘗試次數(shù)歸零處理

}

//進行下一步針對得到的Url的處理

}

3 結語

本文主要真對在校園網(wǎng)站中建設網(wǎng)絡蜘蛛系統(tǒng),原理結構均相對簡單,沒有涉及到信息分類檢索等問題。因此只對網(wǎng)絡爬蟲技術的檢索效率等問題進行了研究,該系統(tǒng)還有很多方面存在進一步研究與探討的空間,如在動態(tài)網(wǎng)站的圖片獲取,多線程的重復采集等問題上還有很多地方需要繼續(xù)研究。

參考文獻

[1] 李曉明,閆宏飛,王建民 搜索引擎_原理 技術與系統(tǒng)[M] 北京科學出版社,2004.

[2] 李剛,盧炎生 教育網(wǎng) BBS 搜索引擎設計與實現(xiàn)[J] 微計算機信息,2006(6).

主站蜘蛛池模板: 毛片a级毛片免费观看免下载| 欧美亚洲国产精品第一页| 色噜噜狠狠色综合网图区| 亚洲日韩精品欧美中文字幕| 亚洲精品久综合蜜| 91毛片网| 91福利免费| 色婷婷视频在线| 91久久国产热精品免费| 波多野结衣AV无码久久一区| 亚洲成a人片在线观看88| 久久国语对白| 久久这里只有精品2| 久久天天躁狠狠躁夜夜躁| 亚洲第一天堂无码专区| 网友自拍视频精品区| 又粗又硬又大又爽免费视频播放| 色九九视频| 婷婷开心中文字幕| 亚洲精品制服丝袜二区| 91青青在线视频| 五月天婷婷网亚洲综合在线| 伊人无码视屏| 久久婷婷五月综合色一区二区| 亚洲精品自在线拍| 亚洲国产在一区二区三区| 亚洲永久精品ww47国产| 亚洲—日韩aV在线| AV不卡无码免费一区二区三区| 国产成人精品在线1区| 制服无码网站| 亚洲午夜天堂| 好久久免费视频高清| 国产在线精品99一区不卡| 毛片a级毛片免费观看免下载| 亚洲日韩AV无码一区二区三区人| 欧美激情网址| 婷婷午夜影院| 久久伊伊香蕉综合精品| 97色伦色在线综合视频| 欧美日韩理论| 国产精品专区第1页| 五月丁香伊人啪啪手机免费观看| 国产高清在线精品一区二区三区| 丝袜久久剧情精品国产| 亚洲欧美成人影院| 2021亚洲精品不卡a| 亚洲国产高清精品线久久| 2021国产乱人伦在线播放 | 亚洲无码视频图片| 免费国产无遮挡又黄又爽| 国产成人乱无码视频| 国产白浆视频| 中文字幕中文字字幕码一二区| 国产美女自慰在线观看| 亚洲乱伦视频| 国产精品开放后亚洲| 无码精品国产VA在线观看DVD| 国产农村妇女精品一二区| 日韩天堂网| 日本在线视频免费| 国产SUV精品一区二区| AV片亚洲国产男人的天堂| 最新日韩AV网址在线观看| 韩国v欧美v亚洲v日本v| 91麻豆精品国产高清在线| 亚洲人网站| 九月婷婷亚洲综合在线| 在线无码九区| 亚洲日韩AV无码一区二区三区人 | 色偷偷一区| 国产在线观看精品| 日韩 欧美 小说 综合网 另类| av尤物免费在线观看| 中文字幕亚洲无线码一区女同| 亚洲天堂区| 国产亚洲一区二区三区在线| 伊人成人在线视频| 日本一本正道综合久久dvd| 国产网友愉拍精品| 天天摸夜夜操| 国内精品小视频福利网址|