99re在线视频播放-99re在线视频观看-99re在线视频免费观看-99re在线这里只有精品免费-免费色视频网站-免费色网站

當(dāng)前位置:四川肆合互動(dòng)科技有限公司 > 技術(shù)資訊 >建站知識(shí)

網(wǎng)頁(yè)去重和增加爬蟲(chóng)收錄的方法有這些

發(fā)表日期:2019-11-01文章編輯:admin瀏覽次數(shù):0 ?

  想做好網(wǎng)站收錄,一定要了解去重算法和指紋算法,只有這樣才能更好地做好原創(chuàng)網(wǎng)頁(yè),幫助網(wǎng)站促進(jìn)收錄,提升排名。對(duì)一個(gè)新的網(wǎng)頁(yè),爬蟲(chóng)程序通過(guò)網(wǎng)頁(yè)去重算法,最終決定是否對(duì)其索引,成都網(wǎng)站建設(shè)公司優(yōu)化人員為你帶來(lái)以下干貨知識(shí)講解:

  一、近似重復(fù)網(wǎng)頁(yè)類型,根據(jù)文章內(nèi)容和網(wǎng)頁(yè)布局格式的組合分為4種形式:

  1、兩篇文檔在內(nèi)容和布局格式上毫無(wú)區(qū)別,則這種重復(fù)稱為完全重復(fù)頁(yè)面。

  2、兩篇文檔內(nèi)容相同,但布局格式不同,則這種重復(fù)稱為內(nèi)容重復(fù)頁(yè)面。

  3、兩篇文檔有部分重要的內(nèi)容相同,并且布局格式相同,則這種重復(fù)稱為布局重復(fù)頁(yè)面。

  4、兩篇文檔有部分重要內(nèi)容相同,但布局格式不同,則這種重復(fù)稱為部分重復(fù)頁(yè)面。

  二、重復(fù)網(wǎng)頁(yè)對(duì)搜索引擎的不利影響:

  正常情況下,非常相似的網(wǎng)頁(yè)內(nèi)容不能或只能給用戶提供少量的新信息,但在對(duì)爬蟲(chóng)進(jìn)行抓取、索引和用戶搜索會(huì)消耗大量的服務(wù)器資源。

  三、重復(fù)網(wǎng)頁(yè)對(duì)搜索引擎的好處:

  如果某個(gè)網(wǎng)頁(yè)重復(fù)性很高,往往是其內(nèi)容比較比較受歡迎的一種體現(xiàn),也預(yù)示著該網(wǎng)頁(yè)相對(duì)比較重要。應(yīng)予以優(yōu)先收錄。當(dāng)用戶搜索時(shí),在輸出結(jié)果排序時(shí),也應(yīng)給與較高的權(quán)重。

  四、重復(fù)文檔的處理方式:

  1、刪除

  2、將重復(fù)文檔分組

  五、 SimHash文檔指紋計(jì)算方法 :

  1、從文檔中提取具有權(quán)值的特征集合來(lái)表示文檔。如:假設(shè)特征都是由詞組成的,詞的權(quán)值由詞頻TF來(lái)確定。

  2、對(duì)每一個(gè)詞,通過(guò)哈希算法生成N位(通常情況是64位或更多)的二進(jìn)制數(shù)值,如上圖,以生成8位的二進(jìn)制值為例。每個(gè)詞都對(duì)應(yīng)各自不同的二進(jìn)制值。

  3、在N維(上圖為8維)的向量V中,分別對(duì)每維向量進(jìn)行計(jì)算。如果詞相應(yīng)的比特位的二進(jìn)制數(shù)值為1,則對(duì)其特征權(quán)值進(jìn)行加法運(yùn)算;如果比特位數(shù)值為0,則進(jìn)行減法運(yùn)算,通過(guò)這種方式對(duì)向量進(jìn)行更新。

  4、當(dāng)所有的詞都按照上述處理完畢后,如果向量V中第i維是正數(shù),則將N位的指紋中第i位設(shè)置為1,否則為0。

  一般的,我們想抓取一個(gè)網(wǎng)站所有的URL,首先通過(guò)起始URL,之后通過(guò)網(wǎng)絡(luò)爬蟲(chóng)提取出該網(wǎng)頁(yè)中所有的URL鏈接,之后再對(duì)提取出來(lái)的每個(gè)URL進(jìn)行爬取,提取出各個(gè)網(wǎng)頁(yè)中的新一輪URL,以此類推。整體的感覺(jué)就是自上而下進(jìn)行抓取網(wǎng)頁(yè)中的鏈接,理論上來(lái)看,可以抓取整站所有的鏈接。但是問(wèn)題來(lái)了,一個(gè)網(wǎng)站中網(wǎng)頁(yè)的鏈接是有環(huán)路的。

  首先介紹一個(gè)簡(jiǎn)單的思路,也是經(jīng)常用的一個(gè)通用思路。我們將已經(jīng)爬取過(guò)的網(wǎng)頁(yè)放到一個(gè)列表中去,以首頁(yè)為例,當(dāng)首頁(yè)被抓取之后,將首頁(yè)放到列表中,之后我們抓取子網(wǎng)頁(yè)的時(shí)候,如果再次碰到了首頁(yè),而首頁(yè)已經(jīng)被抓取過(guò)了,此時(shí)就可以跳過(guò)首頁(yè),繼續(xù)往下抓取其他的網(wǎng)頁(yè),而避開(kāi)了將首頁(yè)重復(fù)抓取的情況,這樣下來(lái),爬取整站就不會(huì)出現(xiàn)一個(gè)環(huán)路。以這個(gè)思路為出發(fā)點(diǎn),將訪問(wèn)過(guò)的URL保存到數(shù)據(jù)庫(kù)中,當(dāng)獲取下一個(gè)URL的時(shí)候,就去數(shù)據(jù)庫(kù)中去查詢這個(gè)URL是否已經(jīng)被訪問(wèn)過(guò)了。雖然數(shù)據(jù)庫(kù)有緩存,但是當(dāng)每個(gè)URL都去數(shù)據(jù)庫(kù)中查詢的話,會(huì)導(dǎo)致效率下降的很快,所以這種策略用的并不多,但不失為最簡(jiǎn)單的一種方式。

  第二種方式是將訪問(wèn)過(guò)的URL保存到set中去,通過(guò)這樣方式獲取URL的速度很快,基本上不用做查詢。但是這種方法有一個(gè)缺點(diǎn),將URL保存到set中,實(shí)際上是保存到內(nèi)存中,當(dāng)URL數(shù)據(jù)量很大的時(shí)候(如1億條),會(huì)導(dǎo)致內(nèi)存的壓力越來(lái)越大。對(duì)于小型的爬蟲(chóng)來(lái)說(shuō),這個(gè)方法十分可取,但是對(duì)于大型的網(wǎng)絡(luò)爬蟲(chóng),這種方法就難以企及了。

  第三種方式是將字符進(jìn)行md5編碼,md5編碼可以將字符縮減到固定的長(zhǎng)度。一般來(lái)說(shuō),md5編碼的長(zhǎng)度約為128bit,約等于16byte。在未縮減之前,假設(shè)一個(gè)URL占用的內(nèi)存大小為50個(gè)字節(jié),一個(gè)字節(jié)等于2byte,相當(dāng)于100byte。由此可見(jiàn),進(jìn)行md5編碼之后,節(jié)約了大量的內(nèi)存空間。通過(guò)md5的方式可以將任意長(zhǎng)度的URL壓縮到同樣長(zhǎng)度的md5字符串,而且不會(huì)出現(xiàn)重復(fù)的情況,達(dá)到去重的效果。通過(guò)這種方式很大程度上節(jié)約了內(nèi)存,scrapy框架采取的方式同md5方式有些類似,所以說(shuō)scrapy在正常情況下,即使URL的數(shù)量級(jí)達(dá)到了上億級(jí)別,其占用的內(nèi)存比起set方式也要少得多。

  第四種方式是使用bitmap方法將字符進(jìn)一步壓縮。這種方式的意思是在計(jì)算機(jī)中申請(qǐng)8個(gè)bit,即8個(gè)位,每個(gè)位由0或者1表示,這是計(jì)算機(jī)中最小的單元。8個(gè)位組成1個(gè)byte,一個(gè)位代表一個(gè)URL的話,為什么一個(gè)位可以確定一個(gè)URL呢?因?yàn)槲覀兛梢詫⒁粋€(gè)URL進(jìn)行一個(gè)哈希函數(shù),然后將其映射到位上面去。舉個(gè)栗子,假設(shè)我們有8個(gè)URL,分別對(duì)應(yīng)8個(gè)位,然后通過(guò)位上面的0和1的狀態(tài),便可以表明這個(gè)URL是否存在,通過(guò)這種方法便可以進(jìn)一步的壓縮內(nèi)存。但是bitmap方法有一個(gè)非常大的缺點(diǎn),就是它的沖突會(huì)非常高,因?yàn)橥靡粋€(gè)哈希函數(shù),極有可能將兩個(gè)不同的URL或者多個(gè)不同的URL映射到一個(gè)位置上來(lái)。實(shí)際上這種哈希的方法,它也是set方式的一種實(shí)現(xiàn)原理,它將URL進(jìn)行一種函數(shù)計(jì)算,然后映射到bit的位置中去,所以這種方式對(duì)內(nèi)存的壓縮是非常大的。簡(jiǎn)單的來(lái)計(jì)算一下,還是以一億條URL來(lái)進(jìn)行計(jì)算,相當(dāng)于一億個(gè)bit,通過(guò)計(jì)算得到其相當(dāng)于12500000byte,除以1024之后約為12207KB,大概是12MB的空間。在實(shí)際過(guò)程中內(nèi)存的占用可能會(huì)比12MB大一些,但是即便是如此,相比于前面三種方法,這種方式以及大大的減少了內(nèi)存占用的空間了。但是與此同時(shí),該方法產(chǎn)生沖突的可能性是非常大的,所以這種方法也不是太適用的。那么有沒(méi)有方法將bitmap這種對(duì)內(nèi)存濃重壓縮的方法做進(jìn)一步優(yōu)化,讓沖突的可能性降下來(lái)呢?答案是有的,就是第五種方式。

  第五種方式是bloomfilter,該方法對(duì)bitmap進(jìn)行改進(jìn),它可以通過(guò)多個(gè)哈希函數(shù)減少?zèng)_突的可能性。通過(guò)這種方式,一方面它既可以達(dá)到bitmap方法減少內(nèi)存的作用,另一方面它又同時(shí)起到減少?zèng)_突的作用。關(guān)于bloomfilter原理及其實(shí)現(xiàn),后期肯定會(huì)給大家呈上,今天先讓大家有個(gè)簡(jiǎn)單的認(rèn)識(shí)。Bloomfilter適用于大型的網(wǎng)絡(luò)爬蟲(chóng),尤其是數(shù)量級(jí)超級(jí)大的時(shí)候,采用bloomfilter方法可以起到事半功倍的效果,其也經(jīng)常和分布式爬蟲(chóng)共同配合,以達(dá)到爬取的目的。

相關(guān)新聞
主站蜘蛛池模板: 免费看黄色网页 | 国产高清在线视频一区二区三区 | 四虎伊人| 国产精品香蕉在线观看不卡 | 欧美成人h版 | 欧美a免费 | 日本深夜18免费看片高清网 | 国产福利不卡 | 成人黄激情免费视频 | 97国内免费久久久久久久久久 | 老潮湿影院免费体验区 | 久久蜜桃| 91青青青国产在观免费影视 | 成人网在线视频 | 香蕉国产线观看 | 视频一区在线观看 | 亚洲国产日韩欧美在线vip1区 | 91极品哺乳期女神挤奶在线 | 在线欧美国产 | 亚洲免费观看在线视频 | 欧美成人香蕉在线观看 | 第一福利在线观看 | 国内视频自拍 | 国产网站免费观看 | 亚洲午夜网 | 日韩一区二区精品久久高清 | 四虎影视永久地址 | 国产成在线人视频免费视频 | 在线观看中文字幕亚洲 | 免费在线观看日韩 | 中文字幕一区二区三区在线观看 | 国产中文字幕乱人伦在线观看 | 日韩中文在线观看 | 欧美a视频在线观看 | 在线观看91精品国产剧情免费 | 一区二区播放 | 欧美高清观看免费全部完 | 91系列在线观看 | 国产成人亚洲精品91专区手机 | 一区二区三区成人 | 狠狠操五月天 |