搜索引擎中網(wǎng)絡(luò)爬蟲的設(shè)計(jì)分析_SEO優(yōu)化教程
推薦:怎樣增加網(wǎng)站內(nèi)頁權(quán)重混跡于大大小小得SEO群中,經(jīng)常會(huì)聽到站長們會(huì)在抱怨,搜索引擎怎么對自己得網(wǎng)站不友好,搜索引擎怎么都抓取不了自己得產(chǎn)品頁面(對于做電子商務(wù)網(wǎng)站得運(yùn)營者來
說的簡單易懂一些,網(wǎng)絡(luò)爬蟲跟你使用的〖離線閱讀〗工具差不多。說離線,其實(shí)還是要跟網(wǎng)絡(luò)聯(lián)結(jié),否則怎么抓東西下來?那么不同的地方在哪里?
1)網(wǎng)絡(luò)爬蟲高度可配置性。
2)網(wǎng)絡(luò)爬蟲可以解析抓到的網(wǎng)頁里的鏈接
3)網(wǎng)絡(luò)爬蟲有簡單的存儲(chǔ)配置
4)網(wǎng)絡(luò)爬蟲擁有智能的根據(jù)網(wǎng)頁更新分析功能
5)網(wǎng)絡(luò)爬蟲的效率相當(dāng)?shù)母?
那么依據(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)在一臺(tái)普通的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。
注重,效率是取勝的要害之一。
4)爬的深度是多少呢?
看情況了。假如你比較牛,有幾萬臺(tái)服務(wù)器做網(wǎng)絡(luò)爬蟲,我勸您跳過這一點(diǎn)。
假如你同我一樣只有一臺(tái)服務(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ì)算
好了,爬到三級(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)存儲(chǔ)結(jié)構(gòu)。
這個(gè)人人見智,google 用 gfs 系統(tǒng),假如你有7/8臺(tái)服務(wù)器,我勸你用NFS系統(tǒng),要是你有70/80個(gè)服務(wù)器的話我建議你用afs 系統(tǒng),要是你只有一臺(tái)服務(wù)器,那么隨便。
給一個(gè)代碼片斷,是我寫的新聞搜索引擎是如何進(jìn)行數(shù)據(jù)存儲(chǔ)的:
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
非凡是注重以下幾句:
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)頁收錄幾率會(huì)越大、收錄數(shù)量越多,收錄是SEO最基礎(chǔ)的一個(gè)環(huán)節(jié)。
分享:Google提醒用戶:交換鏈接會(huì)降低PR指數(shù)一直以來,站長們在推廣自己的網(wǎng)站的時(shí)候都把交換鏈接作為提高自己的PR的主要手段,似乎換的鏈接越多自己的PR值就越大,甚至很多網(wǎng)站都有專人負(fù)責(zé)這項(xiàng)工作。現(xiàn)
- B2B網(wǎng)站SEO優(yōu)化實(shí)戰(zhàn)經(jīng)驗(yàn)分享
- 淺析如何提高SEO優(yōu)化團(tuán)隊(duì)效率
- 谷歌如何評(píng)價(jià)一篇博文是否是軟文
- 盧松松:Bing與Google搜索排名因素研究
- 盧松松:給谷歌的蜂鳥算法潑瓢冷水
- 提高移動(dòng)站在百度質(zhì)量度等級(jí)的詳細(xì)說明
- 谷歌推出網(wǎng)站人工干預(yù)通知
- 優(yōu)化技巧:如何設(shè)置自定義503錯(cuò)誤頁面?
- 解讀SEO元素周期表
- 網(wǎng)站SEO最高境界之從 “人性化” 出發(fā)
- 社會(huì)化媒體營銷是如何對企業(yè)產(chǎn)生相應(yīng)影響
- 小站長們該如何面對新一輪的百度算法調(diào)整
- 相關(guān)鏈接:
- 教程說明:
SEO優(yōu)化教程-搜索引擎中網(wǎng)絡(luò)爬蟲的設(shè)計(jì)分析
。