- 相關(guān)推薦
探究全自動網(wǎng)頁信息采集系統(tǒng)論文
搜索引擎存在一定的局限性,會導(dǎo)致搜索的結(jié)果不能很好滿足用戶的需求。例如,在一個搜索引擎中,搜索一個信息,互聯(lián)網(wǎng)中會搜到成百上千的相關(guān)鏈接,甚至幾萬個相關(guān)鏈接,其中存在著一些無效和重復(fù)的鏈接,即便是有效的鏈接,數(shù)量也是龐大的。面對這些龐大的數(shù)據(jù),如果通過逐一查看,將會消耗大量的時間和人力。因此,使用戶利用搜索引擎快速、準(zhǔn)確的獲取所需數(shù)據(jù)信息,是用戶迫切需要的。
全自動網(wǎng)頁信息采集的目的是通過已有的Web信息抽取、網(wǎng)絡(luò)爬蟲等相關(guān)技術(shù)對搜索結(jié)果中的網(wǎng)頁信息進(jìn)行處理,能夠自動完成商品信息抽取,并將結(jié)果存入數(shù)據(jù)庫,以實現(xiàn)在一定的時間內(nèi),用戶搜索的信息如果在數(shù)據(jù)庫中有相應(yīng)的記錄,就可以直接從數(shù)據(jù)庫中檢索出相應(yīng)的信息提交給用戶,最后給用戶提供一個較權(quán)威的搜索結(jié)果,這樣能夠節(jié)省大量的時間,提高自動化程度。
1 網(wǎng)絡(luò)爬蟲技術(shù)
網(wǎng)絡(luò)爬蟲是一個自動提取網(wǎng)頁的程序,它為搜索引擎從萬維網(wǎng)上下載網(wǎng)頁,是搜索引擎的重要組成,例如在做圖片搜索時,需要大量的測試圖片,因此可以使用爬取圖書封面圖片。它會對一個特定網(wǎng)頁進(jìn)行抓取分析URL,不斷的抓取并分析,直到?jīng)]有新的URL 出現(xiàn)。一般的搜索引擎只抓取網(wǎng)頁的一部分,不會抓取全部網(wǎng)頁。為了最大限度利用有限的資源,需要進(jìn)行資源配置,并運用某些策略使爬蟲優(yōu)先爬取重要性較高的網(wǎng)頁。HtmlParser 是一個對現(xiàn)有的HTML 進(jìn)行分析的快速實時解析器,解析功能非常強(qiáng)大,本文將利用它對網(wǎng)頁中的內(nèi)容進(jìn)行商品信息提取。
2 基于Heritrix的擴(kuò)展和定制
2.1 Heritrix中添加定制的Extractor
要實現(xiàn)的功能是對淘寶商品信息的抓取。例如淘寶網(wǎng)的商品詳細(xì)信息的網(wǎng)址如下:http://item.taobao.com/item.htm?spm=a230r.1.14.90.WLLzF8&id=37599839492
(1)從URL 格式可以看出,http://item.taobao.com 是淘寶商品網(wǎng)頁的域名,spm=a230r.1.14.90.WLLzF8 表示流量來源,用于統(tǒng)計點擊來源,id=37599839492 表示當(dāng)前網(wǎng)頁的編號。通過多個網(wǎng)頁分析之后,發(fā)現(xiàn)網(wǎng)頁由域名+點擊來源+編號等組成,因此制定如下抓取匹配正則表達(dá)式:http://item.taobao.com/item.htm?spm=(([w]+).)+[w]+&id=[d]+對于該正則表達(dá)式的URL 鏈接進(jìn)行抓取,不符合的過濾掉,這樣就有了抓取的方向和范圍。
(2)在Heritrix 中,所有的要擴(kuò)展實現(xiàn)Extractor的類都繼承自抽象基類Extractor,在它基類的內(nèi)部實現(xiàn)了inner Process 方法,主要是處理各種異常和日志的記錄,因此擴(kuò)展實現(xiàn)Extractor 的新類也都必須實現(xiàn)inner Process方法。
2.2 在Prefetcher中取消限制
為搜索引擎抓取網(wǎng)站的內(nèi)容而設(shè)置的robots.txt是一個純文本文件,訪問一個站點時,一般首先檢查該站點根目錄下是否存在robots.txt,如果存在,就會按照該文件中的內(nèi)容來確定訪問的范圍;如果該文件不存在,那么就沿著鏈接抓取[5]。在搜索時需要進(jìn)行robots.txt 查找,影響效率。因此,修改Heritrix的PreconditionEnforcer 類中的ConsiderRobotsPreconditions方法,方法聲明如下:private boolean consider Robots Preconditions(CrawlURI curi);返回值設(shè)定為false,這樣可以提高50%以上的效率。
3 全自動網(wǎng)頁信息采集系統(tǒng)
基于對國內(nèi)權(quán)威商品網(wǎng)站信息和客戶需求的認(rèn)真分析,本網(wǎng)頁信息采集系統(tǒng)需要滿足兩個需求:
(1)網(wǎng)頁信息的采集。首先要對信息抓取時要進(jìn)行詳細(xì)的規(guī)劃,確保抓取的頁面都是和所需信息相關(guān)的頁面,本文主要針對所要搜索商品的各類信息的抓取為主,然后將搜索到的信息下載到本地,并對其網(wǎng)頁進(jìn)行分析,抽取出所需要的信息,最后將商品的名稱、價格、優(yōu)惠、商品詳情等信息,存到數(shù)據(jù)庫中,供用戶將來查詢和檢索。
(2)信息的搜索需求。根據(jù)用戶的要求,在系統(tǒng)的前臺輸入想要查找的信息,首先通過網(wǎng)絡(luò)爬蟲爬去滿足要求的網(wǎng)頁,經(jīng)過過濾器信息抽取,將搜索到的信息保存到數(shù)據(jù)庫,并將結(jié)果顯示給用戶。
3.1 網(wǎng)絡(luò)爬蟲模塊
Heritrix 自身是一個通用爬蟲框架,在進(jìn)行網(wǎng)頁內(nèi)容處理之前需要調(diào)用Frontier 對要抓取的URL 進(jìn)行處理,這樣才能根據(jù)用戶的需求抓取信息。在對URL的處理完成之后,需要實現(xiàn)自定義的Extractor,用于處理對搜索到的網(wǎng)頁內(nèi)容分類,進(jìn)而找出下一步需要處理的URL信息。具體分為以下步驟:
(1)設(shè)置Heritrix 的種子站點,將淘寶網(wǎng)主頁的URL 加入種子站點seeds 文件中,啟動Heritrix 抓取時就會到這些頁面上開始爬行。
(2)擴(kuò)展FrontierScheduler,來實現(xiàn)過濾不相干的網(wǎng)頁。由于Frontier Scheduler 不能保證只抓取系統(tǒng)特定格式的URL,擴(kuò)展抓取符合規(guī)則的URL。URL的選擇策略主要滿足以下任一條件:(a)URL.indexof(“item.taobao.com/item.htm”)!=-1這個條件用于過濾不是詳細(xì)商品信息的頁面,以提高抓取的準(zhǔn)確性;(b)URL.indexOf("dns:")!=-1 該條件是Heritrix在域名解釋時請求URL的前綴;(c)URL.indexOf("robots.txt")!=-1 滿足該條件的URL 是針對robots 策略發(fā)出的URL 所包含的字符串抓取頁面找到src/modules 目錄下的Processor.options文件。
4 結(jié)論
本論文對搜索引擎的基本原理和內(nèi)部功能組件的功能做了概述,為信息采集系統(tǒng)的構(gòu)建提供了理論和技術(shù)基礎(chǔ)。在通用搜索引擎的基礎(chǔ)上,對信息采集的相關(guān)技術(shù)更加深入的進(jìn)行分析,針對網(wǎng)絡(luò)爬蟲技術(shù)、信息提取技術(shù)、HtmlParser 技術(shù)等,還需要進(jìn)一步提高效率和數(shù)據(jù)分布式存儲、建立索引并不斷地對其進(jìn)行更新等。
【探究全自動網(wǎng)頁信息采集系統(tǒng)論文】相關(guān)文章:
信息管理系統(tǒng)論文02-15
管理信息系統(tǒng)論文06-21
管理信息系統(tǒng)論文(集合)07-22
信息管理系統(tǒng)論文15篇02-15
信息系統(tǒng)項目管理師論文02-22
管理信息系統(tǒng)論文必備15篇07-21
物資管理系統(tǒng)論文07-31