何翼 陳文娟 蒲天銀
摘 要: 目前Web數(shù)據(jù)挖掘技術(shù)已得到廣泛應用,通過對Web挖掘分類和挖掘基本理論的分析,提出網(wǎng)絡爬蟲原理內(nèi)容挖掘方法,深入分析這種方法的原理和工作流程。爬蟲原理的應用可滿足特定用戶的需求,實現(xiàn)高效、快捷、針對性強的查詢。
關(guān)鍵詞: Web挖掘分析; 網(wǎng)絡爬蟲; 原理分析
中圖分類號:TP391 文獻標志碼:A 文章編號:1006-8228(2013)07-01-02
0 引言
隨著Internet的日益普及,電子商務正以其成本低廉、方便、不受時空限制等突出優(yōu)點而逐步在全球流行。同時經(jīng)濟模式也發(fā)生了變化,從傳統(tǒng)的實體商店到Internet上的電子交易,改變了銷售商和顧客的關(guān)系?,F(xiàn)在,網(wǎng)上顧客的流動性很大,他們更多關(guān)注商品的使用價值和價格,而不像以前更多關(guān)注品牌和地理因素。因此,電子銷售商一個主要的挑戰(zhàn)是盡可能多地了解到客戶的興趣愛好和價值取向,以保證在電子商務時代的競爭力。通過Web日志挖掘,可以發(fā)現(xiàn)顧客的購買偏好;發(fā)現(xiàn)忠實客戶,為他們提供個性化的服務,延長客戶的駐留時間;發(fā)現(xiàn)潛在用戶,為他們提供個性化頁面,變潛在用戶為忠實客戶,擴大市場占有率;分析客戶未來可能發(fā)生的行為,進行有針對性的電子商務營銷活動,提高廣告的投資回報率。所以從長遠看對基于Web數(shù)據(jù)挖掘的研究很有必要。
1 Web數(shù)據(jù)挖掘概述
Web數(shù)據(jù)挖掘是數(shù)據(jù)挖掘技術(shù)的重要應用,它是指在大量訓練樣本的基礎上,得到數(shù)據(jù)對象間的內(nèi)在特性,并以此為依據(jù)在網(wǎng)絡資源中進行有目的的信息提取[1]。
1.1 Web數(shù)據(jù)挖掘流程
Web數(shù)據(jù)挖掘總體上講來,可以由五個流程來完成,如圖1所示。
⑴ Web查找資源:根據(jù)所提供的目標Web文檔內(nèi)容,采用一定的技術(shù)方法獲得相應的數(shù)據(jù),形成挖掘的數(shù)據(jù)源。需要說明的是,這部分資源不僅局限于在線Web文檔資源,還包括與其相關(guān)的電子郵件、電子文檔、新聞組,或者網(wǎng)站的日志數(shù)據(jù)資源,甚至還可包括通過Web形成的交易數(shù)據(jù)庫中的數(shù)據(jù)資源。如何對這些資源進行融合是一個極為重要的問題。
⑵ 信息選擇和預處理:通過查詢獲得的數(shù)據(jù)源,從中篩選出有用的信息,并將其按一定的類型進行歸集。
⑶ 模式發(fā)現(xiàn):針對歸集得到的有用信息,將其應用于某一具體的站點或多個相應的站點,并進行自動模式發(fā)現(xiàn)。
⑷ 模式分析:對模式發(fā)現(xiàn)階段得到的一些模式進行分析,驗證、解釋每一步驟間產(chǎn)生的模式的關(guān)聯(lián)關(guān)系。這一階段的工作可以由機器自動完成,也可以與分析人員進行交互來完成,主要依據(jù)模式發(fā)現(xiàn)規(guī)模來確定。
⑸ 信息整理:對經(jīng)過模式分析得到的信息進行進一步挖掘整理,將其應用于Web商務中。
1.2 Web數(shù)據(jù)挖掘分類
Web挖掘技術(shù)研究至今,已有一些不同的方法,一般根據(jù)對Web數(shù)據(jù)的感興趣程度不同,可將Web數(shù)據(jù)挖掘分為Web內(nèi)容挖掘、Web結(jié)構(gòu)挖掘、Web用法挖掘三類。
⑴ Web內(nèi)容挖掘:Web內(nèi)容挖掘指從Web內(nèi)容中發(fā)現(xiàn)有用信息[2]。Web上的信息由各種類型的數(shù)據(jù)源組成,包括WWW、FTP、Telnet等,比如數(shù)字圖書館、政府信息服務、電子商務數(shù)據(jù),以及其他可以通過Web訪問的數(shù)據(jù)庫。
⑵ Web結(jié)構(gòu)挖掘:從廣義上講,Web的結(jié)構(gòu)包含三個內(nèi)容:一是不同網(wǎng)頁間的超鏈接;二是網(wǎng)頁內(nèi)部的網(wǎng)絡地址字符串中的目錄路徑結(jié)構(gòu)信息;三是網(wǎng)頁內(nèi)部內(nèi)容可以用HTML、XML表示成的樹形結(jié)構(gòu)信息[3]。
⑶ Web用法挖掘:即Web使用紀錄挖掘技術(shù)[4],在新興的電子商務領(lǐng)域有重要意義,它通過挖掘相關(guān)的Web日志紀錄,來發(fā)現(xiàn)用戶訪問Web頁面的模式;通過分析日志紀錄中的規(guī)律,可以識別用戶的喜好與滿意度,這些分析數(shù)據(jù)可以幫助我們提高站點的服務質(zhì)量,同時發(fā)現(xiàn)未來潛在用戶。
2 爬蟲原理
爬蟲是一個用來分解Web中超文本結(jié)構(gòu)的工具,而網(wǎng)絡爬蟲則可以認為是一個自動提取網(wǎng)頁的程序,它為搜索引擎從萬維網(wǎng)下載網(wǎng)頁,是搜索引擎的重要組成部分。一個商業(yè)網(wǎng)站的Web頁面是以超鏈接的關(guān)系存在的,這就組成了類似一張張的網(wǎng)。
網(wǎng)絡爬蟲是通過網(wǎng)頁的鏈接地址來尋找網(wǎng)頁,從網(wǎng)站某一個頁面(通常是首頁)開始,讀取網(wǎng)頁的內(nèi)容,同時找到在網(wǎng)頁中的其他鏈接地址,通過這些鏈接地址尋找下一個網(wǎng)頁,這樣一直循環(huán)下去,最終把這個網(wǎng)站所有的網(wǎng)頁都抓取完為止[5]。
假設把整個互聯(lián)網(wǎng)當成一張網(wǎng),那么網(wǎng)絡爬蟲就可以用這個原理在這張網(wǎng)上把互聯(lián)網(wǎng)上所有的網(wǎng)頁信息都抓取下來。具體可按如下步驟。
Step1:從一個或若干初始網(wǎng)頁的網(wǎng)頁地址開始,獲得初始網(wǎng)頁上的網(wǎng)頁地址;
Step2:不斷從當前頁面上抽取新的地址放入隊列,直到滿足系統(tǒng)的一定條件才停止。聚焦爬蟲的工作流程較為復雜,需要根據(jù)一定的網(wǎng)頁分析算法過濾與主題無關(guān)的鏈接,保留有用的鏈接并將其放入等待抓取的地址隊列;
Step3:根據(jù)一定的搜索策略從隊列中選擇下一步要抓取的網(wǎng)頁地址;
Setp4:不斷重復步驟2-3,直到達到系統(tǒng)的某個條件發(fā)出停止指令,不再往下訪問;
Setp5:將所有被爬蟲抓取的網(wǎng)頁存貯,并進行一定的分析、過濾,并建立索引,以便之后的查詢和檢索。對于聚焦爬蟲來說,這一過程所得到的分析結(jié)果還可能對以后的抓取過程給出反饋和指導;
Setp6:任務完成。
3 基于爬蟲內(nèi)容挖掘分析
3.1 內(nèi)容挖掘過程
同Web挖掘總體過程一樣,內(nèi)容挖掘過程由數(shù)據(jù)獲得、數(shù)據(jù)分析、數(shù)據(jù)保存、內(nèi)容挖掘四個過程組成[6],具體介紹如下。
⑴ 數(shù)據(jù)的獲得:利用爬蟲原理對Web相應數(shù)據(jù)進行查找,從需要的信息起始頁開始運行爬蟲程序取得數(shù)據(jù)信息,得到與商務相關(guān)的大多數(shù)Web頁面上的信息。這部分資源不僅局限于在線Web文檔資源,同時還有與其相關(guān)的電子郵件、電子文檔、新聞組,或者網(wǎng)站的日志數(shù)據(jù)資源。
⑵ 數(shù)據(jù)的分析:對Web相關(guān)數(shù)據(jù)進行分析,在對鏈接頁面進行搜索的過程中,經(jīng)常需要判斷信息的屬性或分析信息的價值。這一階段的數(shù)據(jù)非常多,必須在前一階段進行分類,同時對有些數(shù)據(jù)要進行必要的處理,不必要的必須將其刪除,否則影響分析進程,比如一些廣告信息等并不是我們所需要的數(shù)據(jù)。
⑶ 數(shù)據(jù)的保存:通過前一過程的分析,需要把經(jīng)過分析得到有效的數(shù)據(jù)最終保存到一定數(shù)據(jù)庫(就目前針對海量數(shù)據(jù)來講,一般選擇如SQL Server2008等)當中,目的是為了下一步最終的挖掘作準備工作。
⑷ 數(shù)據(jù)挖掘:利用一定的挖掘技術(shù)對數(shù)據(jù)進行深入分析,最終獲取有效的信息,同時對信息模式進行相應的分類,并對這些分類模式進行驗證。
3.2 網(wǎng)絡爬蟲挖掘技術(shù)實現(xiàn)
本爬蟲技術(shù)采用非遞歸方式來實現(xiàn)爬行過程。在實現(xiàn)過程中要構(gòu)建等待隊列、運行隊列、完成隊列、錯誤隊列四個隊列,需經(jīng)過三個流程[7]。
這四個隊列如下:
⑴ 等待隊列是爬蟲初始網(wǎng)頁地址和爬蟲程序新發(fā)現(xiàn)的網(wǎng)頁地址的集合;
⑵ 運行隊列是爬蟲程序正在處理的網(wǎng)頁地址的集合;
⑶ 完成隊列是已經(jīng)被爬行完成的網(wǎng)頁地址的集合;
⑷ 錯誤隊列是爬蟲程序在解析頁面出錯或讀取數(shù)據(jù)超時網(wǎng)頁地址的集合。
網(wǎng)絡爬蟲程序在執(zhí)行時,同一時刻一個網(wǎng)頁地址只能在一個隊列中,我們把它稱為一個網(wǎng)頁地址狀態(tài)。程序按狀態(tài)圖從一個狀態(tài)變換到一個狀態(tài),如圖2所示。
通過圖2過程圖可以看出,一個網(wǎng)頁地址從被待處理到此網(wǎng)頁地址處理完畢要經(jīng)歷四個網(wǎng)頁地址狀態(tài)過程。首先是在等待隊列中,網(wǎng)頁地址等待被自動機進行處理,新發(fā)現(xiàn)的網(wǎng)頁地址被加入到這個隊列中;當自動機開始處理某個網(wǎng)頁的網(wǎng)頁地址時,這個網(wǎng)頁地址就被送到運行隊列中進行處理;在處理過程中,可能有兩種情況出現(xiàn),即這個網(wǎng)頁是否存在問題,要根據(jù)這個問題作出相應的處理,如果自動機在抓獲某個網(wǎng)頁時有問題,那么這個網(wǎng)頁的地址將被送到錯誤隊列,錯誤隊列中的地址不能被移入到其他隊列中;如果自動機成功地獲取某個網(wǎng)頁,那么這個網(wǎng)頁的地址將被送到完成隊列,完成隊列中的地址也不能被移入到其他隊列中。
需要注意的是,等待隊列中的地址向運行隊列移交過程中,需要有一個判斷,這個判斷是確定這個網(wǎng)頁是否被訪問過,若訪問過則不能重復爬行;當運行隊列中一個網(wǎng)頁地址處理完成后,等待隊列中地址按照先進先出的原則被加入到該隊列,同時隊列中相應的地址被刪除。
4 結(jié)束語
電子商務正在企業(yè)和商貿(mào)領(lǐng)域中占據(jù)著越來越多的市場份額,Web挖掘支持網(wǎng)絡應用,具有很強的平臺適應能力,它的適用性和可移植性強。現(xiàn)在世界上的主要數(shù)據(jù)庫廠商紛紛開始把數(shù)據(jù)挖掘功能集成到自己的產(chǎn)品中。作為電子商務成功的重要因素,它必將成為一種關(guān)鍵技術(shù)。
本文介紹了Web挖掘的基本流程,引入了基于圖形的爬蟲技術(shù)挖掘方法,闡述了挖掘步驟,能有效挖掘Web有價值的數(shù)據(jù),完成挖掘任務。但由于這種技術(shù)基于圖形形式,當面對海量數(shù)據(jù)時,對圖形的掃描仍然存在一定的困難,這些問題尚需深入分析研究。
參考文獻:
[1] 蔡遒花,張支山.Web使用模式及其在電子商務領(lǐng)域的應用[J].科技管理研究,2005.11:126-127
[2] 陳美榮,楊莉.基于電子商務網(wǎng)站的Web內(nèi)容挖掘[J].電子商務,2008.2:149
[3] 王玉珍.基于電子商務的Web挖掘技術(shù)研究[J].北京電子科學院學報,2005.4:22-25
[4] 吳海珍,鄭群明.Web記錄挖掘及其在旅游電子商務中的應用[J].電腦學習,2005.5:41-42
[5] 周建梁.聚焦爬蟲原理及關(guān)鍵技術(shù)研究[J].科技資訊,2008.22:26
[6] 李霞.Web內(nèi)容挖掘在企業(yè)電子商務網(wǎng)站的應用研究[J].網(wǎng)絡財富,2010.5:130
[7] 胡晟.基于網(wǎng)絡爬蟲的Web挖掘應用[J].軟件,2012.7:145-147