趙磊磊 楊永
摘 要:為了應(yīng)對網(wǎng)絡(luò)大數(shù)據(jù)的挑戰(zhàn),本文通過對教育技術(shù)網(wǎng)站的頁面布局和網(wǎng)頁源碼的分析,結(jié)合正則表達(dá)式和網(wǎng)頁解析開源類庫的使用,實(shí)現(xiàn)了網(wǎng)絡(luò)信息的準(zhǔn)確匹配提取和人本化信息采集,在一定程度上有利于有效獲取教育技術(shù)最新新聞動(dòng)態(tài),從而有助于提高機(jī)構(gòu)和個(gè)人的業(yè)務(wù)決策能力。
關(guān)鍵詞:教育技術(shù);信息采集;正則表達(dá)式;網(wǎng)頁解析
中圖分類號(hào):G434 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1673-8454(2014)19-0087-03
一、引言
網(wǎng)絡(luò)信息采集是指將非結(jié)構(gòu)化的網(wǎng)頁信息抽取出來并能實(shí)現(xiàn)結(jié)構(gòu)化數(shù)據(jù)庫保存的過程。[1]在搜索引擎的開發(fā)過程中,網(wǎng)頁信息的采集、解析和抽取都是至關(guān)重要的技術(shù)步驟,由于網(wǎng)頁的結(jié)構(gòu)具有多樣性、復(fù)雜性,當(dāng)前一般選用基于模板的網(wǎng)頁信息解析技術(shù)。[2]數(shù)據(jù)挖掘?qū)?shí)現(xiàn)教育技術(shù)大數(shù)據(jù)的有效處理和利用起著非常關(guān)鍵的作用,面向教育技術(shù)新聞的網(wǎng)絡(luò)信息采集系統(tǒng)將會(huì)為教育技術(shù)理念的同步、更新、科學(xué)研究等方面提供方便有效的即時(shí)檢索,能為用戶的網(wǎng)絡(luò)自主學(xué)習(xí)帶來極大的便利。在數(shù)據(jù)挖掘技術(shù)的應(yīng)用基礎(chǔ)下,網(wǎng)絡(luò)信息采集系統(tǒng)的主要功能包括網(wǎng)頁源信息采集、信息分析、數(shù)據(jù)庫保存、自動(dòng)化分類整理以及動(dòng)態(tài)監(jiān)測信息采集內(nèi)容等。[3][4]
很多教育技術(shù)新聞網(wǎng)站所包含的信息較為繁雜,甚至包含很多冗余的廣告信息、因此在利用這些權(quán)威教育技術(shù)網(wǎng)站進(jìn)行信息技術(shù)知識(shí)的學(xué)習(xí)或相關(guān)教育新理念的學(xué)習(xí)時(shí),會(huì)受到一定程度上的困擾。在日益更新的教育技術(shù)網(wǎng)絡(luò)信息面前,如何有效利用知識(shí)信息,更為全面地、及時(shí)地掌握信息的動(dòng)態(tài),了解信息技術(shù)和新的教育技術(shù)理念的發(fā)展動(dòng)態(tài),不僅對于促進(jìn)學(xué)科教師的學(xué)習(xí)具有重大價(jià)值意義,而且對于教育技術(shù)的持續(xù)發(fā)展具有一定的推動(dòng)作用。文章所設(shè)計(jì)的面向教育技術(shù)新聞的網(wǎng)絡(luò)信息采集系統(tǒng)旨在給用戶提供一個(gè)有力的工具對所選教育技術(shù)的權(quán)威網(wǎng)站進(jìn)行深度挖掘,及時(shí)把握教育技術(shù)新動(dòng)態(tài),更為直觀、快捷地保存自己想要的信息。這對教育技術(shù)領(lǐng)域的工作者、學(xué)習(xí)者和愛好者來說,新知識(shí)的獲得變得更具有時(shí)效性和價(jià)值性,節(jié)約了用戶的時(shí)間,在一定程度上促進(jìn)了學(xué)習(xí)效率的提高。
二、信息采集系統(tǒng)相關(guān)技術(shù)
1.獲取網(wǎng)頁編碼
通過編碼類型來從網(wǎng)頁中獲取準(zhǔn)確內(nèi)容,有利于更迅速、有效地使用搜索引擎采集我們需要的信息。信息或字符按照一定的規(guī)則在計(jì)算機(jī)內(nèi)存中存儲(chǔ),編碼的過程實(shí)際上就是將字符轉(zhuǎn)換成字節(jié)流,而解碼的過程就是將字節(jié)流解析為字符。在網(wǎng)頁編碼獲取過程中,首先使用GB2312(系統(tǒng)默認(rèn)的編碼類型)從數(shù)據(jù)流中得到源碼,然后利用正則表達(dá)式從網(wǎng)頁源碼中匹配并獲取相應(yīng)的字符編碼,一般來說,網(wǎng)頁的HTML頭文件中都會(huì)給出指示C:\Users\zhao\Desktop\檢測\htmls\sentence_ detail\33.htmcharset值的一行代碼,從這一行代碼里可以獲取編碼信息,再與系統(tǒng)默認(rèn)編碼作對比判斷是否一致,如果不同,將再次從數(shù)據(jù)流里重新獲得網(wǎng)頁源碼。
2.正則表達(dá)式過濾信息
正則表達(dá)式是指用來表征或匹配一系列契合某個(gè)指定規(guī)則的字符串的單個(gè)字符串。[5]我們通常在Windows操作環(huán)境下利用通配符(*和?)進(jìn)行文件搜尋,例如使用*.Doc來查找某個(gè)指定目錄下的所有的Word文檔。在這里,*會(huì)被解釋為任意的字符串。與通配符的作用類似,正則表達(dá)式也是實(shí)現(xiàn)文本匹配的一種有效工具,只不過與通配符的作用相比,它能更精確地描述和表征使用者的需求。在網(wǎng)絡(luò)信息采集系統(tǒng)中,正則表達(dá)式主要有以下兩方面的功能:
(1)對URL網(wǎng)址鏈接進(jìn)行深層過濾,只提取與特定格式相契合的URL鏈接;
(2)提取網(wǎng)頁內(nèi)容,如新聞標(biāo)題、正文等。
三、教育技術(shù)新聞網(wǎng)絡(luò)信息采集系統(tǒng)的實(shí)現(xiàn)
1.信息采集系統(tǒng)的工作流程
教育技術(shù)新聞大都是在網(wǎng)站的首頁或者子版塊的首頁發(fā)布的,這些頁面叫做導(dǎo)航型頁面或者索引型頁面。新聞采集系統(tǒng)的動(dòng)態(tài)調(diào)度要研究的就是這些導(dǎo)航型網(wǎng)頁的變化規(guī)律,通過對網(wǎng)頁變化規(guī)律的分析,在一定程度上預(yù)測網(wǎng)頁下次變化的時(shí)間,在網(wǎng)頁變化后盡可能快地發(fā)現(xiàn)新的新聞并進(jìn)行采集。[6]教育技術(shù)新聞網(wǎng)絡(luò)信息采集系統(tǒng)的詳細(xì)設(shè)計(jì)流程如下:[7]
第一步:確定信息采集對象,即由用戶自主選取目標(biāo)網(wǎng)站;
第二步:獲取特定信息,即按照目標(biāo)網(wǎng)站的特定網(wǎng)頁格式,獲取目標(biāo)數(shù)據(jù),這里的目標(biāo)數(shù)據(jù)就是一些教育技術(shù)新聞的URL地址、標(biāo)題、正文等內(nèi)容;
第三步:網(wǎng)絡(luò)信息獲取,即利用工具自動(dòng)的把頁面數(shù)據(jù)保存到數(shù)據(jù)庫或硬盤。為了降低信息采集系統(tǒng)的復(fù)雜性,需要把將URL 動(dòng)態(tài)調(diào)度和普通 URL 調(diào)度這兩個(gè)模塊集成封裝為一個(gè)模塊,稱為Frontier。根據(jù)信息采集系統(tǒng)的一般設(shè)計(jì)步驟,結(jié)合權(quán)威教育技術(shù)新聞網(wǎng)站頁面的典型特點(diǎn),本文設(shè)計(jì)了符合權(quán)威教育技術(shù)新聞網(wǎng)站規(guī)律的信息采集系統(tǒng),下面是系統(tǒng)的體系架構(gòu),如圖1所示。
2.模擬瀏覽器和保存功能的實(shí)現(xiàn)
為了使用戶方便、可視化瀏覽將要抓取的網(wǎng)頁,這里可以利用C#中的WebBrowser控件簡易制作一個(gè)內(nèi)嵌的網(wǎng)頁瀏覽器效果,具體操作及實(shí)現(xiàn)過程如下:
第一步:添加WebBrowser控件到窗口設(shè)計(jì)頁面中;
第二步:添加瀏覽器啟動(dòng)按鈕的單擊事件,前往列表框中的url指定的網(wǎng)頁;
第三步:添加NewWindow事件,使得用戶點(diǎn)擊打開新網(wǎng)頁時(shí)不是從IE窗口彈出;
第四步:添加瀏覽器后退按鈕的的單擊事件,實(shí)現(xiàn)返回上一個(gè)瀏覽過的網(wǎng)頁;
第五步:添加Navigated事件,使combox_url中的文本在用戶瀏覽網(wǎng)頁之后能夠顯示當(dāng)前網(wǎng)頁的url。
此外,利用C#語言中的SaveFileDialog類和Stream-Writer類以字符串格式實(shí)現(xiàn)對提取的帖子信息和正文信息的個(gè)性化保存,信息可以保存為txt或doc格式。點(diǎn)擊正文信息保存按鈕會(huì)彈出保存對話框,用戶可以將自己需要的信息保存在數(shù)據(jù)庫或電腦硬盤中,節(jié)省了用戶的網(wǎng)絡(luò)學(xué)習(xí)時(shí)間。endprint
3.測試結(jié)果
經(jīng)過對一些教育技術(shù)網(wǎng)站的測試,發(fā)現(xiàn)本系統(tǒng)已經(jīng)具有一定的通用性,中國教育技術(shù)網(wǎng)、中國教育技術(shù)學(xué)科網(wǎng)等網(wǎng)站均能測試成功運(yùn)行,這里以中國教育技術(shù)網(wǎng)為例展示最終的運(yùn)行效果。輸入正確的URL地址并點(diǎn)擊貼子信息提取按鈕,系統(tǒng)運(yùn)行界面如圖2所示。
由圖2可以得出:左邊提取的結(jié)果與右邊網(wǎng)頁瀏覽顯示的標(biāo)題、時(shí)間一致,因此,索引頁面的提取是正確的。點(diǎn)擊帖子信息保存實(shí)現(xiàn)本地硬盤存儲(chǔ),經(jīng)對比,存儲(chǔ)保存的結(jié)果與左側(cè)解析結(jié)果一致,說明運(yùn)行正確。隨意選中一個(gè)左側(cè)新聞索引列表中的URL地址,并點(diǎn)擊正文信息提取,可以實(shí)現(xiàn)對正文的提取,這里以“視頻云計(jì)算在教育資源平衡化中應(yīng)用的探討”這則新聞為例進(jìn)行效果展示,效果如圖3所示。
為了檢測正文提取的效果,這里給出該則新聞的網(wǎng)頁瀏覽效果,如圖4所示。
經(jīng)過對比,新聞與網(wǎng)頁中的格式、內(nèi)容均保持一致,說明程序運(yùn)行良好。點(diǎn)擊正文信息保存可以實(shí)現(xiàn)對正文以txt或者doc的格式進(jìn)行保存。
四、教育技術(shù)新聞網(wǎng)絡(luò)信息采集系統(tǒng)的應(yīng)用前景
教育技術(shù)新聞網(wǎng)絡(luò)信息采集系統(tǒng)具有廣闊的應(yīng)用前景,可以廣泛地用于以下方面。[8]
1.教育技術(shù)數(shù)字圖書館建設(shè)
建設(shè)現(xiàn)代教育技術(shù)數(shù)字圖書館的一個(gè)關(guān)鍵性的問題就是網(wǎng)絡(luò)教育技術(shù)資源的采集和保存問題。教育技術(shù)領(lǐng)域網(wǎng)絡(luò)信息采集系統(tǒng)可以自動(dòng)從相關(guān)門戶網(wǎng)站地收集網(wǎng)絡(luò)信息資源,并將其按照所屬類別地存入相應(yīng)的資源數(shù)據(jù)庫,從而可以為構(gòu)建教育技術(shù)專業(yè)門戶網(wǎng)站打下基礎(chǔ)。
2.企業(yè)績效技術(shù)運(yùn)用
在信息化時(shí)代,企業(yè)的經(jīng)濟(jì)效益往往跟績效技術(shù)掛鉤。一個(gè)企業(yè)若要在高強(qiáng)度的競爭中立足并在行業(yè)發(fā)展中占據(jù)領(lǐng)先地位,離不開對績效技術(shù)的追蹤與調(diào)查。基于教育技術(shù)領(lǐng)域的網(wǎng)絡(luò)信息采集系統(tǒng)能夠依據(jù)企業(yè)特定的業(yè)務(wù)需求,實(shí)現(xiàn)企業(yè)相關(guān)新聞或情報(bào)的自動(dòng)化收集,并能夠有針對性地作出預(yù)測分析等。如此,企業(yè)就可以對最新的績效技術(shù)情報(bào)進(jìn)行收集,運(yùn)用績效技術(shù)提高企業(yè)的運(yùn)營效益。
3.信息資源的積累
對于任何提供電化教育信息服務(wù)的部門而言,如何獲取大量的、實(shí)用性的信息都是一個(gè)相當(dāng)麻煩的問題。網(wǎng)絡(luò)信息采集系統(tǒng)可以利用數(shù)據(jù)挖掘技術(shù)有針對地進(jìn)行網(wǎng)絡(luò)信息資源的采集和整理,并對信息進(jìn)行按需分類和數(shù)據(jù)庫保存,最終形成知識(shí)信息的個(gè)性化積聚。
4.“人本化”信息采集
某些專業(yè)用戶(如教育技術(shù)領(lǐng)域的研究人員等)對信息的需求是非常特殊和專業(yè)的,網(wǎng)絡(luò)信息采集系統(tǒng)可以根據(jù)他們的個(gè)人研究興趣而進(jìn)行特定專題的自動(dòng)化、個(gè)性化收集,為他們提供其所在領(lǐng)域的最新信息或研究資訊。
五、總結(jié)與展望
網(wǎng)頁信息采集工作,歸根結(jié)底就是一個(gè)模式獲取的問題,盡管本論文的研究取得了一定的成果,但是還存在一些不足有待改進(jìn)和完善。文章中所設(shè)計(jì)系統(tǒng)的設(shè)計(jì)部分識(shí)別機(jī)制主要是由程序員總結(jié)提供的,并不能實(shí)現(xiàn)程序的自動(dòng)識(shí)別獲取,此外,部分網(wǎng)站由于URL為相對地址并且格式不盡相同,在一定程度上會(huì)導(dǎo)致提取錯(cuò)誤,無法有效實(shí)現(xiàn)對正文的提取。因此,如何實(shí)現(xiàn)用戶定制或程序自動(dòng)獲取各種模式,使程序能夠通過機(jī)器學(xué)習(xí)的方式自動(dòng)獲取,以適用于不同的教育技術(shù)網(wǎng)站,將是未來教育技術(shù)新聞網(wǎng)絡(luò)信息采集面臨的一個(gè)主要難題。
參考文獻(xiàn):
[1]羅剛.使用C#開發(fā)自己的搜索引擎[M].北京:清華大學(xué)出版社,2012.
[2]羅剛,王振東.自己動(dòng)手寫網(wǎng)絡(luò)爬蟲[M].北京:清華大學(xué)出版社,2010.
[3]邱哲,符滔滔.開發(fā)自己的搜索引擎[M].北京:人民郵電出版社,2007.
[4]Winter.中文搜索引擎技術(shù)解密:網(wǎng)絡(luò)蜘蛛[M].北京:人民郵電出版社,2010.
[5]鄒濤,張福炎.網(wǎng)絡(luò)信息搜尋技術(shù)與發(fā)展[J].計(jì)算機(jī)工程與科學(xué),2008,20(4):33-36.
[6]賀蘇偉.教育新聞采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].廣州:華南理工大學(xué),2012.
[7]Hsin-His Chen,Shih-Chuang Tsai,Jin-He Tsai.Mining Tables from Large Scale HTML Texts.Proceedings of the 18th International Conference on Computational Linguistics[C], University of Saarlandes,July 31-August4 2009,166-172.
[8]朱華.網(wǎng)絡(luò)信息資源采集技術(shù)[J].國家圖書館學(xué)刊,2004(2):38-40.
(編輯:楊馥紅)endprint