1拱撵,簡單分類
根據(jù)使用場景辉川,網(wǎng)絡(luò)爬蟲可分為 通用爬蟲 和 聚焦爬蟲 兩種.
2,通用爬蟲
通用網(wǎng)絡(luò)爬蟲 是 捜索引擎抓取系統(tǒng)(Baidu拴测、Google乓旗、Yahoo等)的重要組成部分。主要目的是將互聯(lián)網(wǎng)上的網(wǎng)頁下載到本地集索,形成一個互聯(lián)網(wǎng)內(nèi)容的鏡像備份屿愚。
3,通用爬蟲步驟如下:
第一步:抓取網(wǎng)頁
搜索引擎網(wǎng)絡(luò)爬蟲的基本工作流程如下:
1务荆,首先選取一部分的種子URL妆距,將這些URL放入待抓取URL隊列;
2函匕,取出待抓取URL毅厚,解析DNS得到主機的IP,并將URL對應(yīng)的網(wǎng)頁下載下來浦箱,存儲進已下載網(wǎng)頁庫中吸耿,并且將這些URL放進已抓取URL隊列。
3酷窥,分析已抓取URL隊列中的URL咽安,分析其中的其他URL,并且將URL放入待抓取URL隊列蓬推,從而進入下一個循環(huán)....
- 搜索引擎如何獲取一個新網(wǎng)站的URL:
新網(wǎng)站向搜索引擎主動提交網(wǎng)址:(如百度http://zhanzhang.baidu.com/linksubmit/url)
在其他網(wǎng)站上設(shè)置新網(wǎng)站外鏈(盡可能處于搜索引擎爬蟲爬取范圍)
搜索引擎和DNS解析服務(wù)商(如DNSPod等)合作妆棒,新網(wǎng)站域名將被迅速抓取。
但是搜索引擎蜘蛛的爬行是被輸入了一定的規(guī)則的沸伏,它需要遵從一些命令或文件的內(nèi)容糕珊,如標注為nofollow的鏈接,或者是Robots協(xié)議毅糟。
Robots協(xié)議(也叫爬蟲協(xié)議红选、機器人協(xié)議等),全稱是“網(wǎng)絡(luò)爬蟲排除標準”(Robots Exclusion Protocol)姆另,網(wǎng)站通過Robots協(xié)議告訴搜索引擎哪些頁面可以抓取喇肋,哪些頁面不能抓取,例如:
淘寶網(wǎng):https://www.taobao.com/robots.txt
騰訊網(wǎng): http://www.qq.com/robots.txt
第二步:數(shù)據(jù)存儲
搜索引擎通過爬蟲爬取到的網(wǎng)頁迹辐,將數(shù)據(jù)存入原始頁面數(shù)據(jù)庫蝶防。其中的頁面數(shù)據(jù)與用戶瀏覽器得到的HTML是完全一樣的。
搜索引擎蜘蛛在抓取頁面時明吩,也做一定的重復(fù)內(nèi)容檢測间学,一旦遇到訪問權(quán)重很低的網(wǎng)站上有大量抄襲、采集或者復(fù)制的內(nèi)容印荔,很可能就不再爬行低葫。
第三步:預(yù)處理
搜索引擎將爬蟲抓取回來的頁面,進行各種步驟的預(yù)處理躏鱼。
提取文字
中文分詞
消除噪音(比如版權(quán)聲明文字氮采、導(dǎo)航條、廣告等……)
索引處理
鏈接關(guān)系計算
特殊文件處理
....
除了HTML文件外染苛,搜索引擎通常還能抓取和索引以文字為基礎(chǔ)的多種文件類型鹊漠,如 PDF、Word茶行、WPS躯概、XLS、PPT畔师、TXT 文件等娶靡。我們在搜索結(jié)果中也經(jīng)常會看到這些文件類型。
但搜索引擎還不能處理圖片看锉、視頻姿锭、Flash 這類非文字內(nèi)容塔鳍,也不能執(zhí)行腳本和程序。
第四步:提供檢索服務(wù)呻此,網(wǎng)站排名
搜索引擎在對信息進行組織和處理后轮纫,為用戶提供關(guān)鍵字檢索服務(wù),將用戶檢索相關(guān)的信息展示給用戶焚鲜。
同時會根據(jù)頁面的PageRank值(鏈接的訪問量排名)來進行網(wǎng)站排名掌唾,這樣Rank值高的網(wǎng)站在搜索結(jié)果中會排名較前,當然也可以直接使用 Money 購買搜索引擎網(wǎng)站排名忿磅,簡單粗暴糯彬。
4,通用爬蟲的局限性
通用搜索引擎所返回的結(jié)果都是網(wǎng)頁葱她,而大多情況下撩扒,網(wǎng)頁里90%的內(nèi)容對用戶來說都是無用的。
不同領(lǐng)域览效、不同背景的用戶往往具有不同的檢索目的和需求却舀,搜索引擎無法提供針對具體某個用戶的搜索結(jié)果。
萬維網(wǎng)數(shù)據(jù)形式的豐富和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,圖片、數(shù)據(jù)庫署恍、音頻囚霸、視頻多媒體等不同數(shù)據(jù)大量出現(xiàn),通用搜索引擎對這些文件無能為力,不能很好地發(fā)現(xiàn)和獲取。
通用搜索引擎大多提供基于關(guān)鍵字的檢索,難以支持根據(jù)語義信息提出的查詢术裸,無法準確理解用戶的具體需求。
5亭枷,聚焦爬蟲
聚焦爬蟲袭艺,是"面向特定主題需求"的一種網(wǎng)絡(luò)爬蟲程序,它與通用搜索引擎爬蟲的區(qū)別在于: 聚焦爬蟲在實施網(wǎng)頁抓取時會對內(nèi)容進行處理篩選叨粘,盡量保證只抓取與需求相關(guān)的網(wǎng)頁信息猾编。