網(wǎng)頁數(shù)據(jù)采集抓取
在互聯(lián)網(wǎng)絡(luò)的時(shí)代,信息如同大海般沒有邊際。甚至我們獲取信息的方法已經(jīng)發(fā)生改變:從傳統(tǒng)的翻書查字典,繼而變成通過搜索引擎進(jìn)行檢索。我們從信息匱乏的時(shí)代一下子走到了信息極大豐富今天。
在今天,困擾我們的問題不是信息太少,而是太多,多得讓你無從分辨,無從選擇。因此,提供一個能夠自動在互聯(lián)網(wǎng)上抓取數(shù)據(jù),并自動分揀、分析的工具有非常重要的意義。
我們通過傳統(tǒng)的搜索引擎所獲得的信息,通常是通過網(wǎng)頁的形式所展現(xiàn)的,這樣的信息人工閱讀起來自然親切,但計(jì)算機(jī)卻很難進(jìn)行加工和再利用。而且檢索到的信息量太大,我們很難在大量的檢索結(jié)果中抽取出我們最需要的信息。采用自動識別關(guān)鍵詞技術(shù),將你需要的信息從海量的信息中篩選出來。就是數(shù)據(jù)抓取。
網(wǎng)頁數(shù)據(jù)采集,又稱數(shù)據(jù)獲取,是利用一種裝置,從系統(tǒng)外部采集數(shù)據(jù)并輸入到系統(tǒng)內(nèi)部的一個接口。
在互聯(lián)網(wǎng)行業(yè)快速發(fā)展的今天,數(shù)據(jù)采集已經(jīng)被廣泛應(yīng)用于互聯(lián)網(wǎng)及分布式領(lǐng)域,比如攝像頭,麥克風(fēng),都是數(shù)據(jù)采集工具。
數(shù)據(jù)采集系統(tǒng)整合了信號、傳感器、激勵器、信號調(diào)理、數(shù)據(jù)采集設(shè)備和應(yīng)用軟件。
在數(shù)據(jù)大爆炸的互聯(lián)網(wǎng)時(shí)代,數(shù)據(jù)的類型也是復(fù)雜多樣的,包括結(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)。
結(jié)構(gòu)化最常見,就是具有模式的數(shù)據(jù)。
非結(jié)構(gòu)化數(shù)據(jù)是數(shù)據(jù)結(jié)構(gòu)不規(guī)則或不完整,沒有預(yù)定義的數(shù)據(jù)模型,包括所有格式的辦公文檔、文本、圖片、XML, HTML、各類報(bào)表、圖像和音頻/視頻信息等等。大數(shù)據(jù)采集,是大數(shù)據(jù)分析的入口,所以是相當(dāng)重要的一個環(huán)節(jié)。
實(shí)現(xiàn)網(wǎng)頁數(shù)據(jù)抓取是搜索引擎的基本功能之一。每個獨(dú)立的搜索引擎都有自己的網(wǎng)頁抓取程序(spider)。Spider順著網(wǎng)頁中的超鏈接,連續(xù)地抓取網(wǎng)頁。被抓取的網(wǎng)頁被稱之為網(wǎng)頁快照。由于互聯(lián)網(wǎng)中超鏈接的應(yīng)用很普遍,理論上,從一定范圍的網(wǎng)頁出發(fā),就能搜集到絕大多數(shù)的網(wǎng)頁。
發(fā)現(xiàn)、抓取網(wǎng)頁信息需要有高性能的“網(wǎng)絡(luò)蜘蛛”程序(Spider)去自動地在互聯(lián)網(wǎng)中搜索信息。一個典型的網(wǎng)絡(luò)蜘蛛工作的方式,是查看一個頁面,并從中找到相關(guān)信息,然后它再從該頁面的所有鏈接中出發(fā),繼續(xù)尋找相關(guān)的信息,以此類推,直至窮盡。網(wǎng)絡(luò)蜘蛛要求能夠快速、全面。網(wǎng)絡(luò)蜘蛛為實(shí)現(xiàn)其快速地瀏覽整個互聯(lián)網(wǎng),通常在技術(shù)上采用搶先式多線程技術(shù)實(shí)現(xiàn)在網(wǎng)上聚集信息。通過搶先式多線程的使用,你能索引一個基于URL鏈接的Web頁面,啟動一個新的線程跟隨每個新的URL鏈接,索引一個新的URL起點(diǎn)。當(dāng)然在服務(wù)器上所開的線程也不能無限膨脹,需要在服務(wù)器的正常運(yùn)轉(zhuǎn)和快速收集網(wǎng)頁之間找一個平衡點(diǎn)。在算法上各個搜索引擎技術(shù)公司可能不盡相同,但目的都是快速瀏覽Web頁和后續(xù)過程相配合。目前國內(nèi)的搜索引擎技術(shù)公司中,比如百度公司的網(wǎng)絡(luò)蜘蛛采用了可定制、高擴(kuò)展性的調(diào)度算法使得搜索器能在極短的時(shí)間內(nèi)收集到最大數(shù)量的互聯(lián)網(wǎng)信息,并把所獲得的信息保存下來以備建立索引庫和用戶檢索。