何鈞雷
摘 要
作為數(shù)字圖書館建設的重要方面之一,數(shù)字資源建設可以利用主題爬蟲對網(wǎng)絡中所蘊含的數(shù)字資源進行自動化搜集。主題網(wǎng)絡爬蟲是主題搜索引擎的重要構成方面,本文以本體指導主題爬蟲進行數(shù)字資源的建設,實驗結果顯示:以主題爬蟲為基礎進行數(shù)字資源建設具有一定的實用價值,但性能有待進一步提高。
【關鍵詞】主題爬蟲 數(shù)字資源 本體 建設
【關鍵詞】主題爬蟲 數(shù)字資源 本體 建設
數(shù)字資源在教育及科研等多個領域均具有舉足輕重的作用,圖書館是教學及科研的信息中心,因此,數(shù)字資源建設也是數(shù)字圖書館建設的重要方面之一。萬維網(wǎng)的推廣與應用使其成為數(shù)字資源的主要來源之一,但是,由于其海量化、異構化、增長快速化、半結構化、動態(tài)更新化等特點,導致手動搜索數(shù)字資源變得越來越費時、費力,主題爬蟲有效解決了這一問題。
1 主題爬蟲的概念與分類
所謂的“主題爬蟲”,指的是利用不同鏈接及爬取策略,從制定的主題資源入手,對各網(wǎng)頁鏈接進行分析,并對主題相關度進行計算,去除同主題不相關的資源及信息,保存同主題相關度較高的資源,有選擇性的爬取網(wǎng)頁。理想情況下,好的主題爬蟲可以準確分析網(wǎng)頁主題相關度,因而運行效率更高、更準,可以快速搜索到用戶所需資源。
根據(jù)不同的排序算法,可將主題網(wǎng)絡爬蟲分為三大類,即經(jīng)典爬蟲、語義爬蟲、智能爬蟲。其中,經(jīng)典爬蟲主要利用的是網(wǎng)頁文本的內(nèi)容、結構及兩者相結合,對URLs 排序優(yōu)先值進行計算,再進行降序排列;語義爬蟲利用的是本體相似度對URLs 排序優(yōu)先值進行計算,再進行降序排列;智能爬蟲利用人工智能計算方式,對URLs排序優(yōu)先值進行計算,再進行降序排列。
2 主題爬蟲關鍵技術分析
2.1 爬行策略
主題爬蟲搜索策略是按有規(guī)則的、預先安排好的方式對網(wǎng)頁進行搜集,爬蟲對網(wǎng)絡節(jié)點爬行方式是按照一定的次序,有目的性地進行抓取,因而可使爬行方式更科學、目表更明確,且可以對爬行路線進行有效辨別及解析。整體而言,主題爬蟲搜索策略包括兩種,即宏觀策略和微觀策略。前者針對的是如何對數(shù)據(jù)庫中的保存頁面更新進行宏觀分析、描述,爬蟲周期性連續(xù)工作,由于頁面獲取數(shù)量及數(shù)據(jù)庫資源的有限性,導致爬蟲也需要周期性地抓取頁面,其每循環(huán)一周期,就可對傳統(tǒng)數(shù)據(jù)庫信息進行獲取和更新,且出去所有相同頁面,對頁面信息缺乏的予以補充,如此循環(huán)往復下,確保頁面庫所有數(shù)據(jù)盡可能為最新的信息,提高了系統(tǒng)查詢功能的及時性與綜合性;后者搜索策略偏重于對爬蟲實際網(wǎng)頁獲取步驟進行研究,包括爬行規(guī)則、運行方式等。關鍵在于對爬蟲路徑及規(guī)則進行預先規(guī)定,確保爬蟲可以根據(jù)預先設定的方式爬取網(wǎng)絡節(jié)點,以便更好地對爬蟲行為進行預測和控制,實現(xiàn)了爬蟲效率的有效提升。對于多樣化的搜索策略,其主要依賴于所設定的不同的爬行準則,各策略爬蟲爬行目標網(wǎng)頁并不一致,且爬行路徑各不相同,通常結合多重因素的制約,尋找更有針對性的搜索策略。
2.2 獲取網(wǎng)頁
爬取網(wǎng)頁是主題爬蟲最先需要實現(xiàn)的操作,由于網(wǎng)頁存在于網(wǎng)絡多服務器上,因此,主題爬蟲需要先對網(wǎng)頁進行搜集。要想將網(wǎng)頁從服務器上進行抓取,必須遵循網(wǎng)絡相應的通信規(guī)則。應以HTTP超文本傳輸協(xié)議為依據(jù),結合互聯(lián)網(wǎng)通信原理完成,在網(wǎng)頁解析時利用的是HTML語法進行分析,實現(xiàn)了網(wǎng)頁的獲取。
2.3 主題相關度
首先,需要從網(wǎng)頁中對信息資源進行提取。在此過程中,主題爬蟲系統(tǒng)預處理模塊將HTML文本轉換為數(shù)據(jù)流形式,并讀入內(nèi)存中,以所對應內(nèi)容為依據(jù),執(zhí)行相應的操作過程,然后對 HTML網(wǎng)頁的文本予以準確分析,獲取正文文本以及超鏈接信息,為相關度分析提供了依據(jù)。例如,在超鏈接提取時,網(wǎng)頁解析器先根據(jù)文件集合獲取頁面,對頁面的類型予以判斷,只處理“text/html”類型的頁面;依次讀取緩存數(shù)據(jù)流,一旦遇見等標記,將其URL鏈接記下,并提取為說明文字,用以解釋該超鏈接;將保存的超鏈接進行格式處理;對URL錨文本進行存儲,對網(wǎng)頁相關度進行計算;鏈接提取完畢。
其次,需要進行中文分詞。中文分詞指的是將漢字序列進行有效切分,成為單獨的詞,此過程需要根據(jù)所設置規(guī)則,將連續(xù)性的字序重新結合為新詞序列。分詞算法主要包括三類,即根據(jù)字符串匹配與否進行分詞算法、根據(jù)機器理解進行分詞的算法、以人工統(tǒng)計為依據(jù)進行計算的分詞算法。雖然分詞算法已經(jīng)十分成熟,但要想利用電腦實現(xiàn)中文分詞并非易事,需要對歧義、新詞進行識別,可利用3GWS分詞系統(tǒng)來進行。
3 主題爬蟲視角下數(shù)字資源的建設分析
鑒于傳統(tǒng)以鏈接分析為基礎的方法缺乏必要的語義分析,為此,應充分結合網(wǎng)頁鏈接結構及其語義性,以本體為基礎,對URL隊列進行排序,以便為主題爬蟲的搜索方法及基于主題爬蟲基礎上的數(shù)字資源建設提供指導。
3.1 本體結構
本體是指用于人、數(shù)據(jù)庫及應用間信息的共享,不斷加強人和計算機之間的相互協(xié)作,因而在諸如數(shù)字圖書館、信息檢索等領域得到十分廣泛的應用。計算機領域?qū)⒈倔w定義為六元組O={C,AC,R,AR,H,X}。其中,C為概念的集合。AC代表多屬性集合共同構成的集合,各屬性集合分別對應某個概念。R為關系集合,AR指的是由多個屬性集合共同構成的集合,其中各屬性集合分別對應R中的某個關系。H代表概念相互之間存在的層次結構關系,X為公理集合。
本體的直接目標即獲取,對相關領域的知識進行描述,提供對該知識的理解,對該領域都認可的詞匯進行明確,并分別從各層次形式化模式上對此類術語及相互間的關系給出清晰的定義。對于語義網(wǎng)而言,本體屬于核心元素,可用以對信息進行結構化,確保用戶及計算機可以對所需信息進行訪問,實現(xiàn)相互間的有效合作。由此可見,本體在網(wǎng)絡交互、訪問及通信中具有十分重要的作用,將本體思想充分應用于主題爬蟲模型中,可以有效提高網(wǎng)頁搜索與抓取的準確性。