下面作一簡(jiǎn)單介紹:
(1)抓取友好性
互聯(lián)網(wǎng)資源龐大的數(shù)量級(jí),要求抓取系統(tǒng)盡可能地高效利用帶寬,在有限的硬件和帶寬資源下盡可能多地抓取到有價(jià)值的資源。這就造成另一個(gè)問題:耗費(fèi)被抓網(wǎng)站的帶寬造成訪問壓力,如果程度過大,將直接影響被抓網(wǎng)站的正常用戶訪問行為。因此,在抓取過程中就要進(jìn)行一定的抓取壓力控制,達(dá)到既不影響網(wǎng)站的正常用戶訪問又能盡量多地抓取到有價(jià)值資源的目的。
通常,最基本的是基于IP的壓力控制。因?yàn)槿绻谟蛎?,可能存在一個(gè)域名對(duì)多個(gè)IP(很多大網(wǎng)站)或多個(gè)域名對(duì)應(yīng)同一個(gè)IP(小網(wǎng)站共享IP)的問題。實(shí)際中往往根據(jù)P及域名的多種條件進(jìn)行壓力調(diào)配控制。同時(shí),站長(zhǎng)平臺(tái)也推出了壓力反饋工具,站長(zhǎng)可以人工調(diào)配對(duì)自己網(wǎng)站的抓取壓力,這時(shí)!百度spider將優(yōu)先按照站長(zhǎng)的要求進(jìn)行抓取壓力控制。
對(duì)同一站點(diǎn)的抓取速度控制一般分為兩類:
其一,一段時(shí)間內(nèi)的抓取頻率;
其二,段時(shí)間內(nèi)的抓取流量。
同一站點(diǎn)不同的時(shí)間抓取速度也不同。例如,夜晚抓取的可能就會(huì)快一些,也視具體站點(diǎn)類型而定,主要思想是錯(cuò)開正常用戶訪問高峰,不斷調(diào)整。對(duì)于不同站點(diǎn),也需要不同的抓取速度。
(2)常用抓取返回碼示意
下面簡(jiǎn)單介紹幾種百度支持的返回碼。
①最常見的404代表“NOT FOUND”,認(rèn)為網(wǎng)頁已經(jīng)失效,通常將在庫中刪除,同時(shí)短期內(nèi)如果spider再次發(fā)現(xiàn)這條URL.也不會(huì)抓取。
②503代表“Service unavailabl ,認(rèn)為網(wǎng)頁臨時(shí)不可訪問,通常網(wǎng)站臨時(shí)關(guān)閉,帶寬有限等會(huì)產(chǎn)生這種情況。對(duì)于網(wǎng)頁返回503百度spider不會(huì)把這條url直接刪除,同時(shí)短期內(nèi)將會(huì)反復(fù)訪問幾次,如果網(wǎng)頁已恢復(fù),則正常抓??;如果繼續(xù)503狀態(tài)碼,那么這條URL仍會(huì)被認(rèn)為是失效鏈接,從庫中刪除。
③403代表Forbidden,認(rèn)為網(wǎng)頁目前禁止訪問。如果是新URL, spider暫時(shí)不抓取,短期內(nèi)同樣會(huì)反復(fù)訪問幾次;如果是已收錄UHL,不會(huì)直接刪除,短期內(nèi)同樣反復(fù)訪認(rèn)為是失效鏈接,從庫中刪除。問幾次。如果網(wǎng)頁正常訪問,則正常抓取;如果仍然禁止訪問,那么這條URL也會(huì)被。
④301代表“Moved”認(rèn)為網(wǎng)頁重定向至新URL當(dāng)遇到站點(diǎn)遷移 域名更換、站點(diǎn)改版的情況時(shí),推薦使用301返回碼,同田時(shí)使用站長(zhǎng)平臺(tái)網(wǎng)站改版工具,以減少改版對(duì)網(wǎng)站流量造成的損失。
(3)多種URL重定向的識(shí)別
互聯(lián)網(wǎng)中的一部分網(wǎng)頁因?yàn)楦鞣N各樣的原因存在URL重定向狀態(tài),為了對(duì)這部分資源正常抓取,要求 spider對(duì)URL重定向進(jìn)行識(shí)別判斷,同時(shí)防止作弊行為。重定向可分為三類:htp30x重定向、 meta refresh重定向和js重定向。另外,百度也支持Canonical標(biāo)簽,在效果上也可以認(rèn)為是一種間接的重定向。
(4)抓取優(yōu)先級(jí)調(diào)配
由于互聯(lián)網(wǎng)資源規(guī)模巨大以及變化迅速,對(duì)于搜索引擎來說,全部抓取到并合理地更新,保持一致性幾乎是不可能的事情,因此要求抓取系統(tǒng)設(shè)計(jì)一套合理的抓取優(yōu)先級(jí)調(diào)配策略,主要包括深度優(yōu)先遍歷策略、寬度優(yōu)先遍歷策略、pr優(yōu)先策略、反鏈策略、社會(huì)化分享指導(dǎo)策略等。每個(gè)策略各有優(yōu)劣,在實(shí)際情況中往往是多種策略結(jié)合使用,以達(dá)到最優(yōu)的抓取效果。
(5)重復(fù)URL的過濾
spider在抓取過程中需要判斷一個(gè)頁面是否已經(jīng)抓取過了,如果還沒有抓取,再進(jìn)行抓取網(wǎng)頁的行為,并放在已抓取網(wǎng)址集合中。判斷是否已經(jīng)抓取其中涉及最核心的是快速查找并對(duì)比,同時(shí)于涉及URL歸一化識(shí)別。例如,一個(gè)URL中包含大量無效參數(shù),而實(shí)際是同一個(gè)頁面,這將視為同一個(gè)URL來對(duì)待。
(6)暗網(wǎng)數(shù)據(jù)的獲取
互聯(lián)網(wǎng)中存在著大量的搜索引擎暫時(shí)無法抓取到的數(shù)據(jù),被稱為暗網(wǎng)數(shù)據(jù)。一方面,很多網(wǎng)站的大量數(shù)據(jù)存在于網(wǎng)絡(luò)數(shù)據(jù)庫中,spider難以采用抓取網(wǎng)頁的方式獲得完整內(nèi)容;另一方面,由于網(wǎng)絡(luò)環(huán)境、網(wǎng)站本身不符合規(guī)范、孤島等問題,也會(huì)造成搜索引擎無法抓取。目前,對(duì)于暗網(wǎng)數(shù)據(jù)的獲取,主要思路仍然是通過開放平臺(tái)采用數(shù)據(jù)提交的方式來解決,如“百度站長(zhǎng)平臺(tái)”“百度開放平臺(tái)”等。
(7)抓取反作弊
spider在抓取過程中往往會(huì)遇到所謂抓取黑洞,或者面臨大量低質(zhì)量頁面的因擾這就要求抓取系統(tǒng)中同樣需要設(shè)計(jì)一套完善的抓取反作弊系統(tǒng)。例如,分析URL特征分析頁面大小及內(nèi)容、分析站點(diǎn)規(guī)模對(duì)應(yīng)抓取規(guī)模等。Spider抓取系統(tǒng)是搜索引擎數(shù)據(jù)來源的重要保證,這對(duì)于網(wǎng)站制作、網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)者來說就是機(jī)遇和突破口,具體的做法就千差萬別了。
本文地址:http://m.cdrpkj.cn//article/2513.html