您現(xiàn)在的位置:中國IDC圈 >> SEO(搜索優(yōu)化) |
關(guān)于搜索引擎中網(wǎng)絡(luò)爬蟲的設(shè)計(jì)分析 |
說的簡單易懂一些,網(wǎng)絡(luò)爬蟲跟你使用的〖離線閱讀〗工具差不多。說離線,其實(shí)還是要跟網(wǎng)絡(luò)聯(lián)結(jié),否則怎么抓東西下來?那么不同的地方在哪里? 1)網(wǎng)絡(luò)爬蟲高度可配置性。 2)網(wǎng)絡(luò)爬蟲可以解析抓到的網(wǎng)頁里的鏈接 3)網(wǎng)絡(luò)爬蟲有簡單的存儲配置 4)網(wǎng)絡(luò)爬蟲擁有智能的根據(jù)網(wǎng)頁更新分析功能 5)網(wǎng)絡(luò)爬蟲的效率相當(dāng)?shù)母?/P> 那么依據(jù)特征,其實(shí)也就是要求了,如何設(shè)計(jì)爬蟲呢?要注意哪些步驟呢? 1)url 的遍歷和紀(jì)錄 這點(diǎn) larbin 做得非常的好,其實(shí)對于url的遍歷是很簡單的,例如: cat [what you got] tr \" \\n gawk '{print $2}' pcregrep ^http:// 就可以得到一個(gè)所由的 url 列表 2)多進(jìn)程 VS 多線程 各有優(yōu)點(diǎn)了,現(xiàn)在一臺普通的PC 例如 booso.com 一天可以輕松爬下5個(gè)G的數(shù)據(jù)。大約20萬網(wǎng)頁。 3)時(shí)間更新控制 最傻的做法是沒有時(shí)間更新權(quán)重,一通的爬,回頭再一通的爬。 通常在下一次爬的的數(shù)據(jù)要跟上一次進(jìn)行比較,如果連續(xù)5次都沒有變化,那么將爬這個(gè)網(wǎng)頁的時(shí)間間隔擴(kuò)大1倍。 如果一個(gè)網(wǎng)頁在連續(xù)5次爬取的時(shí)候都有更新,那么將設(shè)置的爬取時(shí)間縮短為原來的1/2. 注意,效率是取勝的關(guān)鍵之一。 4)爬的深度是多少呢? 看情況了。如果你比較牛,有幾萬臺服務(wù)器做網(wǎng)絡(luò)爬蟲,我勸您跳過這一點(diǎn)。 如果你同我一樣只有一臺服務(wù)器做網(wǎng)絡(luò)爬蟲,那么這樣一個(gè)統(tǒng)計(jì)您應(yīng)該知道: 網(wǎng)頁深度:網(wǎng)頁個(gè)數(shù):網(wǎng)頁重要程度 0 : 1 : : 10 1 :20 : :8 2: :600: :5 3: :2000: :2 4 above: 6000: 一般無法計(jì)算 好了,爬到三級就差不多了,再深入一是數(shù)據(jù)量擴(kuò)大了3/4倍,二是重要度確下降了許多,這叫做“種下的是龍種,收獲的是跳蚤。 5)爬蟲一般不之間爬對方的網(wǎng)頁,一般是通過一個(gè)Proxy出去,這個(gè)proxy有緩解壓力的功能,因?yàn)楫?dāng)對方的網(wǎng)頁沒有更新的時(shí)候,只要拿到 header 的 tag就可以了,沒有必要全部傳輸一次了,可以大大節(jié)約網(wǎng)絡(luò)帶寬。 apache webserver里面紀(jì)錄的 304 一般就是被cache的了。 6)請有空的時(shí)候照看一下robots.txt 7)存儲結(jié)構(gòu)。 這個(gè)人人見智,google 用 gfs 系統(tǒng),如果你有7/8臺服務(wù)器,我勸你用NFS系統(tǒng),要是你有70/80個(gè)服務(wù)器的話我建議你用afs 系統(tǒng),要是你只有一臺服務(wù)器,那么隨便。 給一個(gè)代碼片斷,是我寫的新聞搜索引擎是如何進(jìn)行數(shù)據(jù)存儲的: NAME=`echo $URL perl -p -e 's/([^\w\-\.\@])/$1 eq "\n" ? "\n":sprintf("%%%2.2x",ord($1))/eg'`mkdir -p $AUTHOR newscrawl.pl$URL——user-agent="news.booso.com+(+http://booso.com)"-outfile=$AUTHOR/$NAME -------------------------------------------------------------------------------- 以上轉(zhuǎn)載的是一篇關(guān)于搜索引擎網(wǎng)絡(luò)爬蟲(即搜索引擎蜘蛛程序)的設(shè)計(jì)分析的文章,介紹了一些蜘蛛設(shè)計(jì)的常識,這些信息對SEO都很有幫助,特別是注意以下幾句: 1.通常在下一次爬的的數(shù)據(jù)要跟上一次進(jìn)行比較,如果連續(xù)5次都沒有變化,那么將爬這個(gè)網(wǎng)頁的時(shí)間間隔擴(kuò)大1倍,如果一個(gè)網(wǎng)頁在連續(xù)5次爬取的時(shí)候都有更新,那么將設(shè)置的爬取時(shí)間縮短為原來的1/2. 網(wǎng)頁更新頻度嚴(yán)重影響著搜索引擎蜘蛛程度對網(wǎng)站的爬行,爬取次數(shù)越多意味著網(wǎng)頁收錄幾率會越大、收錄數(shù)量越多,收錄是SEO最基礎(chǔ)的一個(gè)環(huán)節(jié)。 2.好了,爬到三級就差不多了,再深入一是數(shù)據(jù)量擴(kuò)大了3/4倍,二是重要度確下降了許多,這叫做“種下的是龍種,收獲的是跳蚤。 盡量將網(wǎng)站保持在三級目錄內(nèi),深層次的網(wǎng)頁會給搜索引擎帶來很大的壓力,當(dāng)然,我想Google有足夠的服務(wù)器來承擔(dān)這些壓力,但從側(cè)面來說,3層目錄下的網(wǎng)頁被抓取及更新的頻度要低很多。前面,我說過,要想辦法使網(wǎng)站物理結(jié)構(gòu)和邏輯結(jié)構(gòu)吻合,這體現(xiàn)于URL的良好設(shè)計(jì),現(xiàn)在你可以檢查下前臺生成的靜態(tài)網(wǎng)頁的實(shí)際目錄有幾層,考慮是否可以優(yōu)化。 關(guān)于網(wǎng)站邏輯結(jié)構(gòu)和URL設(shè)計(jì),請參考“網(wǎng)站內(nèi)部鏈接優(yōu)化是SEO的第一要素”和“二級域名與一級目錄之間該如何選擇?” |
【責(zé)任編輯:Star】
|
|
|
文章評論
|
|
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
Chinaitlab Group 旗下網(wǎng)站: |
關(guān)于我們 | 廣告服務(wù)| 成功客戶 | 友情鏈接 | 網(wǎng)站歷史 | 聯(lián)系我們 | 招聘信息 | 免責(zé)聲明 |
|
北京盛世創(chuàng)富廣告?zhèn)髅接邢薰?BR>北京運(yùn)營中心:北京市海淀區(qū)中關(guān)村南大街9號理工科技大廈2107室 服務(wù)電話:86-10-85655622 深圳研發(fā)中心:深圳市福田保稅區(qū)英達(dá)利科技數(shù)碼園C座701D 服務(wù)電話:86-755-82044560 Copyright©2001 - 2009 All Rights Reserved |
|