李宜兵 郭玉堂 潘潔珠 陳軍
【摘要】電子商務網站中可以挖掘中大量有價值信息。本文通過數據庫與web挖掘技術相結合,對電子商務網站進行挖掘。通過開源的爬蟲框架heritrx,對購物網站進行爬取,使用htmlparse對網頁進行抽取,對抽取后的數據進行清洗存入數據庫中。最后對數據庫中的數據進行分析、挖掘,找出有價值的信息,對用戶進行推薦等。通過web內容挖掘和數據庫技術相結合,所挖掘出來的信息具有較高的可信度,具有一定的價值。
【關鍵詞】web挖掘;爬蟲;抽取;SQLSERVER
序言
電子商務購物類網站已進入了人們日常生活中。這些網站中包含豐富的數據,通過對這些數據進行挖掘,可以得到大量有用處的信息,為商家營銷和買家購物提供便利。本文提出了針對于購物網站,利用數據庫技術和web挖掘技術相互結合,對購物網站進行數據挖掘。結合數據庫技術使得web挖掘轉化為了數據庫挖掘,使得挖掘更簡化,結果也更準確,在此基礎上設計了一個系統。該系統主要分為;數據爬取、數據抽取、數據入庫、數據挖掘。
1.web挖掘概述
網絡上蘊含著豐富的信息,但是網頁具有無結構化,動態的特點。網頁中蘊含信息不能直觀的挖掘。搜索引擎的出現在一定程度上解決了人們對信息查找的需求,但是搜索引擎基于關鍵詞的查詢,不能提供有針對性的服務。因此,web數據挖掘應用而生,又可分為內容挖掘、結構挖掘、使用記錄挖掘。
1.1 web內容挖掘
Web內容挖掘主要指從文檔中抽取相關信息。可分為文本挖掘、多媒體挖掘。目前研究主要集中在詞頻統計、分類算法、機器學習、數據間隱藏的模式和生成抽取規則等。web內容挖掘可以看做是信息檢索和信息查詢二者的相結合。由于直接處理數據對象內容,故結果也較為準確。因此本文就是采用基于web內容挖掘的方式對購物網站數據進行挖掘分析。利用網絡爬蟲程序對購物網站進行爬取,再利用htmlparse對網頁內容進行抽取。
1.2 web結構挖掘
web結構挖掘的目的是發現頁面結構與結構之間的聯系。利用結構信息,對其進行聚類、分類等,從而找出所需要的模式。結構挖掘是從的組織結構和超鏈接關系中推導知識的過程。網頁包含的不僅僅是頁面的文本內容,同時還有一頁到另一頁的超鏈接,超鏈接結構包含了大量的注釋,通過挖掘這些結構信息,可以準確理解內容的相關性及質量。
1.3 使用記錄挖掘
使用記錄挖掘是指從服務器端記錄的客戶訪問日志或從客戶的瀏覽器信息中抽取感興趣的模式。當用戶訪問頁面時,用戶的地址、訪問時間、頁面等信息在日志中均有記錄。通過分析這些信息,建立適當的模型,運用相應的算法,就可以挖掘出客戶潛在的需求。使用記錄挖掘的基本方法包括聚類、關聯規則、序列模式、分類、依賴性建模、統計分析等。
2.網絡爬蟲
網絡爬蟲以一個或若干網頁作為種子,在抓取網頁的過程中,不斷地從當前的網頁上提取新的URL放入指定的隊列中,直到滿足停止條件。根據算法過濾無關的鏈接,保留相關的鏈接并將其放入等待抓取的URL隊列。然后,根據既定的搜索算法從隊列中選擇下一步要抓取的URL,并重復上述過程,直到達到指定的條件而停止。網頁的抓取策略可以分為深度優先、廣度優先和最佳優先三種。目前比較常見的是廣度優先和最佳優先方法。本文對抓取的網頁存儲在本地硬盤中,以便之后的抽取并解析。
本文采用開源的Heritirx爬蟲框架。它是遞歸執行操作的,主要的步驟如下:
(1)在預先給定定的URL中選擇一個。
(2)獲取URL。
(3)分析并進行歸檔結,得出結果。
(4)選擇哪些相關性較強的URL。加入預定隊列。
(5)標記已經處理過的URL。Heritirx具有可擴展的,能夠結合實際應用,擴展成所需的爬蟲。
3.網頁抽取
網頁抽取指從網頁中抽取指定信息,并存入數據庫中。文檔數據是無結構的,沒有模式信息,并且信息量巨大,適合人們瀏覽而不適合程序自動處理,因此息抽取較為復雜。為了從頁面中抽取有用信息,運用抽取算法抽取后信息應易于系統理解和下一步處理。同時還應具有較強的可擴展性,以便能夠適應各種不同風格的網站。本系統采用的是開源的htmlparser。它主要用于改造或者提取網頁文件內部內容,解析的效率非常高,能夠精確地解析html。htmlparser就是目前比較好的解析和分析的工具。它具有信息提取和信息轉換,文本信息提取,頁面內容的監控等相關功能。
4.數據庫設計
本系統的數據庫技術采用SQLserver2005作為后臺數據,以當當網圖書作為例子進行挖掘,數據庫設計了一個book表,表的結構如下:(id,name,price,recommend,comment,author,press,presstime,isdn,category)
其中id為書的id號,作為這張表的主鍵,name為書名,price為價格,recommend為推薦度,comment為評論人數,author為作者,press為出版社名稱,presstime為出版時間,isdn為isbn號,category為分類。該表包含的數據非常多。借助htmlparser包將爬取后存取在磁盤網頁,解析出來,再將解析的數據存儲到數據庫中。
5.實驗結果與分析
以當當圖書作為挖掘對象,提取出相關信息,例如分類、價格,推薦度、評論人數等。存儲在數據庫中圖書信息通過數據庫中數據,可以進一步的對數據進行分析,例如找出某一類圖書的最高、最低價格,以及圖書的歡迎程度。綜合讀者的評論數、購買量,可以計算出該書的推薦度,從而可以對讀者購買圖書提供一個參考。圖書的推薦度,如圖1所示。
通過web內容挖掘和數據庫技術相結合,所挖掘出來的內容具有較高的可信度,具有一定的價值。下一步可以結合用戶的瀏覽記錄,即用戶行為進行挖掘,針對每個用戶做個性化推薦。
參考文獻
[1]唐菁,基于Web 的文本挖掘[J].計算機工程與應用,2002.
[2]毛國君,段立娟,王實,等.數據挖掘原理與算法[M].北京:清華大學出版社,2007.
[3]王繼成.潘金貴.張福炎.Web文本挖掘技術研究[J].計算機研究與發展.2000,37(5):513-520.
[4]王繼成.潘金貴.張福炎.Web文本挖掘技術研究[J].計算機研究與發展,2000,37(5):513).
[5]林瑞娟.侯德文.Web挖掘及其在電子商務中的應用研究[J].計算機技術與發展.2006,16(8):186-188.
基金項目:安徽省高校自然科學研究重點項目(編號:KJ2013A217);安徽省級質量工程項目——精品資源共享課程(2012gxk085)《數據庫原理》。
作者簡介:
李宜兵(1985—),男,安徽桐城人,碩士,合肥師范學院計算機學院助教,研究方向:信息檢索和數據挖掘。
郭玉堂(1962—),男,安徽安慶人,博士,合肥師范學院計算機學院教授,碩士生導師,主要研究方向:人工智能和圖形處理。