柏志安 廖 健 曾劍平
(上海交通大學醫學院附屬瑞金醫院信息中心 上海 200025)2(復旦大學計算機科學技術學院 上海 200433)
基于HTML Web頁面的網絡信息表示方法是當前的主流,在微博、論壇、傳統網站、公眾號等不同類型應用中廣泛使用。由于Web頁面中通常包含大量與真正內容無關的其他信息,因此,從中抽取有用信息一直是研究和應用的重要基礎。Web信息抽取主要用于從網頁中提取符合要求的信息內容,這些信息通常是以一定的HTML標簽標注的,對提取出來的信息內容可以以一定的方式進行組織和存儲,方便后續的分析或利用。
論壇型網站頁面結構復雜,包含了主帖列表、回帖列表、帖子中的各種用戶信息和帖子內容等眾多信息。針對這些信息的抽取,目前還是傾向于使用基于模版的信息抽取技術為特定的頁面結構生成特定抽取規則。然而這種類型頁面經常進行改版,包括結構組織和頁面內容的調整等,這就導致抽取規則需要重新設計。其原因在于,目前信息抽取技術缺乏對網頁本身特性的利用,整體自動化水平不高。因此,對于Web頁面信息抽取而言,具有很大的挑戰性,研究具有普適性且能夠應對網頁結構變化的自適應信息抽取算法是非常有必要的。
Web信息抽取的技術根據不同的歸類方法有不同的分類。從自動化的程度來說,可以分為非自動化、半自動化和全自動化三類。從技術方法分類,可以分為基于視覺特征的方法、基于本體的方法、基于機器學習的方法、基于DOM樹結構的方法和基于模版的方法[1]。
基于視覺特征的算法利用視覺上的距離進行分塊來區分不同主題的數據,所使用的視覺特征有字體的大小和顏色、頁面背景顏色、間隔距離等。孫璐等[2]提出了一種基于視覺特征的Deep Web信息抽取方法,利用經典的VIPS算法對頁面結構進行語義分塊,基于基準視覺塊進行信息抽取。
基于本體的信息抽取方法通常先對Web頁面進行預處理,包括網頁分塊。然后對網頁文本進行詞性和語法分析,需要設計合理完善的知識庫并構建領域本體,最后解析文本生成抽取規則。文獻[3-4]提出了利用本體的方法抽取信息,或通過建立完整的本體得到抽取規則或是在Web信息抽取中利用領域本體知識。劉麗娟等[5]采用向量空間模型結合特征詞權值,利用本體思想分析并計算主題相關度,從而達到提高特定主題網頁信息抽取質量的目的。
基于機器學習的抽取方法中,一類是利用實現觀察或分析結果定義若干能夠反映預期信息與噪聲信息差別的統計量,然后再進行信息抽取。吳共慶等[6]結合標簽路徑特征和文本塊密度的統計特征,提出了Web新聞信息抽取模型CEDP。李志義等[7]基于一類具有重復模式的頁面,提出了新的信息提取新方法,該方法利用聚類算法發現重復模式。另一類機器學習方法則引入一定的數學模型來描述抽取對象,劉志強等[8]將待抽取信息項視作為狀態,將詞匯作為待抽取觀測項,從而提出基于改進的隱馬爾可夫模型的網頁信息抽取方法,對新聞報道中的關鍵信息進行抽取。深度學習方法也開始被用于Web信息抽取,趙朗[9]構建了一種基于雙層循環神經網絡的模型用于Web頁面信息的抽取。
基于DOM樹的信息抽取領域也有較多的算法和成型的系統[10]。基于分治方法,提出了在DOM上進行最長增量式序列的構建和模板檢測算法[11]。馬曉慧等[12]將DOM樹標簽路徑與行塊的分布密度相結合,利用視覺屬性剪枝去噪防止正文內容誤刪,但對于短文本過多的網站,如論壇網頁缺乏準確性。王海艷等[13]同樣利用視覺特征,提出剪枝和融合算法并引入MapReduce計算框架,實現并行化抽取目標信息的效果。何云鋼等[14]選取DOM樹中每個節點及其子節點進行篩選,只保留文字類型的子節點,最后形成獨立而完整的段落,并將其組成分段的網頁文本內容。
基于模版的信息抽取針對的是通過讀取數據庫數據填充到統一模版生成的網頁。李寶密[15]提出了自動生成模板的Web信息抽取方法,并將模板轉換成為結構化形式。張方[16]提出了一種基于數據分塊的Web數據抽取規則生成算法,自動生成基于Xpath和正則表達式的抽取規則模板。顧韻華等[17]結合DIV塊模板和表格模板,在領域本體指導下訓練決策樹模型構建DIV塊模板定位數據塊。
綜上所述,這五類Web頁面信息抽取方法在各自不同的角度上提出了抽取技術,基于視覺特征的抽取方法并無法區分信息塊中的有用信息,例如發帖人昵稱、發帖時間等。基于本體的方法則存在構造本體的復雜問題,并且抽取質量與本體完整性有密切關系。基于模板的方法更偏向于人工分析的基礎上定義模板,在面對頁面改版時也會遇到很大問題。基于機器學習的方法試圖解決自適應的問題,但引入了閾值這類難以確定的參數或需要大量的標注樣本。基于DOM樹具有直觀的方式,是HTML頁面表示的合適方法。
本文充分利用了DOM樹和模板的優勢,提出新的方法解決頁面抽取的自適應問題。相對于現有Web信息抽取技術,本文的創新點主要是:
(1) 針對論壇型網頁信息抽取,提出一種基于DOM樹與模板的自適應信息抽取算法。算法以擁有共同父節點的鄰近結構進行子樹定位,通過文本長度、鏈接文本長度等特征對子樹內各個節點進行進一步的細分,從而生成信息抽取規則。盡管DOM樹、模板是Web信息抽取的常用方法,但是當前的方法不能充分利用這兩者的優勢,導致Web頁面信息抽取時,難以解決頁面改版帶來的程序重寫問題。
(2) 算法能夠自動適應實際應用中的多種典型頁面改版操作,包括HTML標簽類型、屬性和屬性值的增刪和修改,以及整個頁面中信息單元的位置移動。本文方法能夠很好地針對這些改版自動生成抽取規則并獲得比現有方法更好的抽取性能。
不同類型的網站由于功能與內容偏重不同,頁面的布局往往相差很大。典型的新聞博客類網頁的布局通常是標題位于上方,正文緊隨其后,這能很清楚地引導用戶關注標題及正文的內容。企業、學校等組織的官方網站則有導航和網站主體內容分成兩個部分的頁面布局。本文算法針對的目標是論壇型網頁,不同論壇板塊頁或稱目錄頁的布局大同小異,通常來說就是一個以帖子標題為主要元素的列表,而帖子內的布局可以分為主帖+回復樓層和只有回復樓層兩種,如圖1和圖2所示。

圖1 主帖+回復樓層的帖內頁面結構

圖2 只有回復樓層的帖內頁面結構
對于圖1,不管從外觀還是從DOM樹的角度看,其主帖和下方的評論樓層都分屬不同的部分,可以容易地與評論樓層所在的區域區分開,因此,重點在于定位評論樓層所在的位置。
現代網頁多使用CSS文件來控制頁面布局外觀,實現了與html的分離。在設計得當的情況下,只要修改幾個CSS文件就可以同時對多個網頁進行改版,在對應的html標簽的class屬性內表明其歸屬類即可。也正是這種易修改性,使得網站設計人員進行頁面改版變得更加容易。
此外,部分網站由于反爬蟲的需要,也會頻繁對節點屬性、節點標簽,甚至是頁面結構進行改動。對于通過xpath、css選擇器等方式定位節點再抓取信息的爬蟲采集方式,這種變動會導致抽取規則在改版后完全失效,需要根據變化情況對規則進行人工調整,耗時耗力。另外,通過嵌入html的JavaScript腳本,可以輕易增加、刪除DOM樹上的節點,修改已有節點的屬性、文本等。
因此,考慮到上述多種原因產生的頁面多變性,本文不關注特定節點本身,而是從DOM樹整體結構入手。根據論壇型網頁的特性,比較DOM樹子樹之間的相似性,自動化地分析并獲取能夠定位到所需節點的抽取模板。
現代Web網頁基本上都是采用div+css布局或table布局,前者因為擁有更好的可維護性和更佳的性能在近幾年使用更多。然而不管使用什么格式的布局,正常的網頁設計者為了保證網頁的功能和后續可維護,對頁面做出改版時都會遵循相似的原則。
網頁中每個樓層內的元素和其排列順序基本一致,主要變化在于用戶ID、用戶評論、評論時間對應節點的文本。查看網頁的源代碼,能夠發現在帖內的不同樓層分別屬于擁有相同class屬性的獨立的div容器,且都聚集在上一層的div容器內,樓層內含有各個標簽在div容器內也是以同樣的順序排列。其下出現的標簽、標簽出現的次序、標簽對應的內容,都是同樣的。因此從DOM樹的角度看,它們可以被視為掛在同一個父節點下的多棵結構極度相似的子樹。
不管各個節點的文本內容或者DOM樹整體結構發生什么樣的改變,為了保證網頁符合用戶的使用習慣,用戶評論或回復樓層在視覺上必然集中在一個區域內。為了實現這種設計,在DOM樹上它們也必然是掛在同一個上層節點下。這也就是說,本文算法中定位有效信息所在子樹的核心思想是:在DOM樹上論壇帖內各樓層回帖,表現為擁有共同父節點的鄰近的結構極度相似的子樹。因此,可以認為對于論壇型網頁來說,通過識別相鄰的擁有相似結構的子樹來選擇有效信息子樹,即使修改樓層的一些節點,只要它們多次重復出現且集中在相近區域內,就能正確識別。只要識別出這些代表樓層的有效信息子樹的位置,就可以進一步地通過文本長度、鏈接文本長度等特征對子樹內各個節點進行進一步的細分,判別它們各自的信息類別。
本文算法重點在于定位有效內容對應的標簽,生成抽取規則并提取文本,這需要遍歷DOM樹上所有節點。算法整體流程如圖3所示,在遍歷過程中,根據class屬性對節點進行第一步的粗篩選生成候選集。因為html標簽的class屬性可以有多個值,為了方便操作,將其屬性值拼合成以“.”連接的字符串的形式,并將這個字符串為稱為節點的class屬性串。接下來,獲取候選集內所有class屬性串對應節點的公共父節點,隨后再根據候選集內的情況做下一步的細分。下面分階段說明算法執行過程和原理。

圖3 算法的整體結構
要利用DOM樹進行信息抽取,需要將HTML文檔轉換為對應的DOM樹,之后,所需的回復樓層部分的信息變成了多棵結構相似的子樹,且這些子樹的父節點擁有相同的標簽和屬性。如果能得到這些子樹在DOM樹的位置,我們的問題就可以轉換為對這些有效信息子樹的直接處理。
在根據html構建DOM樹前需要過濾掉不存儲有效信息的html標簽及其內部內容,這些標簽包括: --> 主站蜘蛛池模板: 亚洲无线国产观看| 欧美区日韩区| 2021最新国产精品网站| 国产第一页亚洲| 成人午夜在线播放| 国产av剧情无码精品色午夜| 亚洲国产成人久久精品软件| 亚洲人成成无码网WWW| 精品少妇人妻av无码久久| 国产成人1024精品| 欧美成人精品高清在线下载| 国产白浆视频| 国产香蕉在线视频| 久久国产精品电影| 亚洲欧美日本国产综合在线| 亚洲一区毛片| 亚洲a级毛片| 国产精品xxx| a级毛片一区二区免费视频| 精品久久综合1区2区3区激情| 日本免费一级视频| 一级在线毛片| 亚洲视频无码| 伊伊人成亚洲综合人网7777| 亚洲妓女综合网995久久| 2021国产v亚洲v天堂无码| 无码福利视频| 欧美成人日韩| 色视频久久| 全部免费毛片免费播放| 日本欧美一二三区色视频| 国产精品三级av及在线观看| h视频在线播放| 成人看片欧美一区二区| 免费国产黄线在线观看| 欧洲极品无码一区二区三区| 亚洲性视频网站| 欧美精品v日韩精品v国产精品| 91色国产在线| 无码一区18禁| 婷婷六月激情综合一区| 国精品91人妻无码一区二区三区| 欧美国产在线看| 九九久久99精品| 国产精选小视频在线观看| 九色综合伊人久久富二代| 欧美影院久久| 久久精品日日躁夜夜躁欧美| Jizz国产色系免费| 国产一二视频| 国产91线观看| 国产精品三级专区| 久久精品免费国产大片| 在线观看精品国产入口| 欧美日韩亚洲国产主播第一区| 国产SUV精品一区二区6| 91小视频在线观看免费版高清| 亚洲中文字幕av无码区| 久久精品无码中文字幕| 亚洲综合九九| 亚洲天堂网在线观看视频| 亚洲中文无码av永久伊人| 国产福利一区视频| 最新亚洲人成无码网站欣赏网 | 欧美在线三级| 国内毛片视频| 国产午夜无码片在线观看网站| 成人年鲁鲁在线观看视频| 麻豆精品国产自产在线| 青草免费在线观看| 国产欧美在线观看视频| 美臀人妻中出中文字幕在线| 黄色成年视频| 欧美不卡二区| 香蕉精品在线| 在线观看无码a∨| 国产一级视频久久| 91视频99| 亚洲欧美日韩中文字幕在线| 久无码久无码av无码| 99在线国产| 久久午夜夜伦鲁鲁片无码免费|