趙瑞丹,朱旭
(西安航空職業技術學院,陜西西安 710089)
如今,互聯網已成為人們生活中不可或缺的一部分,特別是對于年輕一代的高校學生,其為人際交往以及資源獲取提供了重要渠道。但由于網絡的開放性與包容性,使得其中積極和負面的輿論信息均能夠在互聯網中迅速傳播,容易在辨別能力差的青年學生中造成較大影響[1-3]。網絡輿情具有發酵時間短、傳播速度快、影響范圍大等特點[4]。輿情尤其是負面輿情發生后,通常由于學校管理部門未能及時發現與處理,造成輿情持續發酵和擴散,引起廣大學生的質疑及不滿,從而產生危機。為此,亟需建立一套能夠對網絡輿情進行實時監控與采集分析的智能化系統。
針對上述提到的問題以及傳統輿情采集系統在采集效率與質量上存在的不足,文中建立了基于爬蟲技術和語義分析的網絡輿情采集系統。該系統選用了效率更高的主題網絡爬蟲和更符合設計需求的廣度優先搜索策略,同時通過引入語義分析技術更優地保證采集到的輿情信息質量。系統性能測試結果表明,該系統能夠較好地進行互聯網中輿情信息的采集和數據存儲,為進一步進行輿情信息的分析處理提供了重要基礎。
網絡爬蟲(Web crawler)是根據某種規則對互聯網上統一資源定位符(Uniform Resource Locator,URL)進行抓取的程序或腳本[5]。作為有效獲取網頁信息的工具,網絡爬蟲能夠為網絡輿情采集系統的設計提供關鍵的基礎數據及數據處理操作平臺。
網絡爬蟲按照系統結構和實現方式的不同,通常可分為兩種[6]:傳統網絡爬蟲和主題網絡爬蟲。
該類爬蟲在進行網頁抓取的過程中主要考慮廣泛的抓取范圍,而不考慮抓取結果與感興趣內容的相似度[7]。傳統網絡爬蟲從給定的一個或多個種子URL開始獲取網頁,并從當前處理的頁面中解析出新的URL 放入待抓取隊列中。具體的工作流程如圖1所示[8-10]。

圖1 傳統網絡爬蟲工作流程
首先,根據設計需求獲取特定網站的URL 作為最初的爬取目標(種子URL);然后,將獲取到的種子URL 放入網絡爬蟲待抓取隊列中[11];隨后,通過域名解析的方式得到隊列中URL 的服務器網絡地址,并將該地址對應的網頁數據存儲到數據庫中;最終,通過數據庫中的網頁數據得到新的URL 放入待抓取隊列中,循環上述過程,直到滿足系統設定的終止條件為止。
隨著系統需要抓取網頁數量的不斷增加,傳統網絡爬蟲已較難滿足實際的系統開發需求。其弊端不僅是網頁信息抓取效率的低下,且抓取結果的質量通常也較差[12]。上述問題,使得該類爬蟲無法滿足網絡輿情采集系統的需求。
此類爬蟲也稱“聚焦網絡爬蟲”,是對傳統網絡爬蟲的一種改進,在其基礎上增加了URL 評價以及與感興趣內容相似度(主題)的判斷[13]。其最主要的特點是抓取與主題相關性大的數據信息,具有明確目標與方向。主題網絡爬蟲對網絡資源進行抓取的流程如圖2 所示。

圖2 主題網絡爬蟲工作流程
主題網絡爬蟲與傳統網絡爬蟲工作流程最大的不同是增加了“策略過濾URL”部分,該部分使得主題爬蟲能夠準確地抓取所需要的網絡資源[14]。主題爬蟲需要預先設定好URL 過濾規則,根據這一規則過濾與主題相關性較弱的URL 鏈接,從而最大程度上保證進入待爬取隊列的URL 為符合系統需要的鏈接。此外,通常還采用語義分析的方法對爬取網頁進行進一步過濾,保證抓取結果的質量。
與傳統網絡爬蟲更加注重網頁爬取的廣泛性相比,主題網絡爬蟲則更注重抓取結果與主題的相關性[15]。該類爬蟲為面向對象的資源搜索提供了重要數據,同時在效率和質量上也表現更優,符合文中網絡輿情采集系統的設計需要。因此,文中也將采用該主題爬蟲技術進行后續的系統設計與開發。
網絡爬蟲技術是輿情采集系統的關鍵部分,其最重要的作用就是通過不斷地抓取網頁,進而為后續的輿情監控與分析提供大量的原始數據。該節主要介紹分析輿情采集系統的需求,以及基于需求所設計的采集系統總體框架和系統利用的關鍵技術。
網絡輿情采集系統的主要功能為:按照實際需求從網絡上采集所需的輿情信息,為進一步地分析預處理提供重要的原始數據。因此,該系統的主要需求如下:
1)用戶可以注冊登錄,同時根據登錄用戶的權限,提供不同的數據管理功能;
2)具有網絡爬蟲的設置接口,能夠對種子URL、搜索策略等進行設置;
3)網絡爬蟲采集到的網頁輿情數據及新的URL可以被存儲到數據庫中;
4)擁有數據更新、過濾等機制。系統應將數據采集與更新、過濾分開,建立專門的數據更新與過濾服務器,從而提高網絡爬蟲的信息抓取效率以及數據更新與過濾的時效性,為后續輿情信息的處理提供更多有價值的數據。
1)系統總體結構
基于上述提到的系統開發需求,文中設計的基于爬蟲技術和語義分析的網絡輿情采集系統,如圖3所示。

圖3 系統總體框架
該系統從功能上可分為4 個模塊:Web 數據庫、URL 數據庫、服務器端及客戶端。其中,Web 數據庫用來存儲網絡爬蟲抓取的網頁數據;URL 數據庫則用來存儲從網頁數據中所得到新的URL 鏈接,這些URL 會按照一定的順序放入網絡爬蟲的待抓取隊列中;服務器端是整個系統的核心部分,主要是進行數據的采集與處理,包括多個子模塊,如URL 調度、網頁數據采集、網頁解析、網頁去重及用戶管理等;客戶端主要是提供多種環境下的人機交互界面,包括網絡站點的管理、數據交互與網絡通信等。
2)系統工作流程
根據上述對輿情采集系統的分析以及結合主題網絡爬蟲的工作流程,文中設計開發的網絡輿情采集系統的具體工作流程,如圖4 所示。

圖4 系統工作流程
文中所設計的系統以主題網絡爬蟲作為驅動,同時也結合了語義分析、頁面相似度分析等技術,該節主要對系統中用到的關鍵技術進行分析。
1)搜索策略
通常主題網絡爬蟲的搜索策略有廣度、深度及最佳3 種優先搜索策略[16-18]。文中在充分考慮系統需求的情況下,選擇了廣度優先搜索作為系統爬蟲進行網頁抓取的工作策略。廣度優先搜索也稱為橫向優先搜索或層次遍歷,其基本思想是從初始節點出發,以輻射狀的形式逐步遍歷周圍節點。以數據結構中的“樹”為例,廣度優先搜索的具體搜索過程可描述為:從樹的根節點出發,沿著樹的寬度方向依次遍歷樹的各個節點,直到遍歷完所有節點或滿足終止條件為止。以圖5 為例,采用廣度優先搜索策略的網絡爬蟲對網頁的抓取順序為A-B-CD-E-F-G-H。

圖5 基于廣度優先的搜索流程
2)語義分析技術
語義分析是自然語言處理(Natural Language Processing,NLP)中的核心部分,是指運用各種算法學習與理解一段文本所表示的語義內容,包括詞法分析、句法分析、語用分析及語境分析等[19-20]。語義分析與主題網絡爬蟲技術相結合用于網頁文本數據的分析,能夠有效過濾網頁中與感興趣內容無關的信息。該系統中利用語義分析中的向量空間模型(VSM)算法對采集到的網頁數據進行進一步過濾,以保證爬蟲網頁抓取結果的質量。
VSM 算法的核心思想是將獲取到的網頁文本信息映射到向量空間中,從而將復雜的文本語義分析轉化為向量運算,將語義相似性轉換為向量相似性。在對網頁信息的處理中,最常用的相似性度量方法即計算兩者之間的余弦距離。
VSM 算法進行文本信息數據處理的流程如下:
1)信息預處理,對主題網絡爬蟲爬取到的網頁數據進行中英文分詞,過濾掉其中包含的錯誤短語及停用詞。
2)對第一步得到分詞結果中的關鍵詞進行選擇與加權,同時統計該網頁各關鍵詞出現的次數,計算相應的頻率。
3)將網頁信息處理為一個具有n個分量的網頁向量,同時向量中的每個分量為各關鍵詞在網頁中所占有的權重,權重的計算依賴于關鍵詞在整個網頁中出現的頻率情況。最終,計算向量相似度所用到的余弦距離數學表達式為:

其中,Sim(D1,D2) 代表兩個網頁的相似度,其值處于0~1 之間,W1k則代表網頁第k個關鍵詞的權重。
4)兩網頁信息數據越相似,其余弦距離的計算結果就越趨近于1。因此,可以通過設定合理的閾值實現對網頁的進一步過濾。
為了驗證文中設計系統的有效性與可靠性,在完成對系統的搭建后,進行以下兩項試驗:系統功能試驗及系統性能試驗。其中,系統功能試驗主要是對文中系統所能實現的基礎功能進行測試,以此確定系統的各個功能能夠按設計需求正常使用;系統性能試驗則是對系統及數據的抓取性能進行測試,如抓取效率和質量等。
1)系統功能試驗
該項試驗分兩部分進行:基本功能試驗及網絡輿情信息采集試驗。基本功能試驗包括用戶注冊、用戶登錄、用戶退出和用戶注銷,對應的試驗結果如表1 所示。

表1 系統基本功能試驗結果
由表1 可以看出,該系統能夠較好地完成用戶注冊、登錄等功能,同時可以在新用戶登錄時提醒注冊,密碼錯誤時提醒用戶重新輸入或進入密碼找回流程。
網絡輿情采集試驗主要通過黑盒測試的方法對預期功能進行試驗,包括輿情信息采集、數據庫管理等功能單元,試驗結果如表2 所示。該結果說明系統能夠按照需求進行網絡輿情信息的采集與管理,系統各項功能運行正常。

表2 網絡輿情采集試驗結果
2)系統性能試驗
系統性能試驗包括VSM 算法網頁數據處理試驗、爬蟲網頁抓取效率和質量試驗。其中,VSM 算法試驗主要驗證該算法對網絡爬蟲采集的輿情信息進行處理的可行性。在系統試驗的一周內,VSM 試驗結果如圖6 所示。其中曲線下方的面積代表經VSM算法處理的輿情信息總數,同時曲線也說明了主題網絡爬蟲所采集的網頁與主題的相關性均較高,基本均能達到0.5 以上。經過VSM 處理后(設定合理閾值),能夠對相似性低的網頁進行進一步過濾,保證結果的質量。

圖6 VSM余弦值與采集網頁數的關系
隨后進行爬蟲網頁輿情信息抓取效率試驗,測試了爬蟲抓取1 000、2 000、3 000 條輿情信息所用的時間及系統采集到的輿情信息與主題的平均相似度。試驗結果如表3 所示。由結果可以看出,系統的輿情信息采集速度平均在每條12 ms 左右,說明系統具有較高的采集效率。

表3 爬蟲網頁抓取效率試驗結果
最終是對采集到的輿情信息質量進行試驗,測試其與主題的平均相似度。其中VSM 的閾值設置為0.75,計算得出的平均相似度為0.833,說明該系統具有較高的輿情信息采集質量。
文中設計開發了一套基于網絡爬蟲技術與語義分析的網絡輿情采集系統,以滿足現代高校學生的輿情監控分析需要。該系統在兩種爬蟲中選擇了在效率與質量上表現更優的主題網絡爬蟲,同時搜索策略選用應用范圍廣泛的廣度優先搜索算法。所設計的輿情采集系統主要包括Web 數據庫、URL 數據庫、服務器端及客戶端4 個模塊。系統功能試驗及系統性能試驗結果說明,該系統能夠在保證性能的情況下,完成系統的各項功能,驗證了系統的可行性與可靠性。