[發明專利]基于DOM樹抽象的包裝器自動生成方法有效
| 申請號: | 201711172974.8 | 申請日: | 2017-11-22 |
| 公開(公告)號: | CN107943929B | 公開(公告)日: | 2021-09-28 |
| 發明(設計)人: | 陳星;張佳俊;王一洲 | 申請(專利權)人: | 福州大學 |
| 主分類號: | G06F16/958 | 分類號: | G06F16/958 |
| 代理公司: | 福州元創專利商標代理有限公司 35100 | 代理人: | 蔡學俊;丘鴻超 |
| 地址: | 350116 福建省福州市*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 dom 抽象 包裝 自動 生成 方法 | ||
本發明涉及一種基于DOM樹抽象的包裝器自動生成方法。包裝器生成階段:用戶輸入網頁集合,得到DOM樹集合;而后,對DOM樹進行合并,遍歷DOM樹對相同標簽的子節點進行合并,并且針對每個節點進行路徑特征標注,最終將DOM樹集合轉化為合并樹集合;對合并樹集合進行抽象操作得到抽象樹,并將抽象樹存入數據庫中;根據配置文檔確定結構化數據在合并樹中的路徑特征,將對應的路徑特征經過處理后寫入文檔中,生成包裝器;結構化數據抽取階段:將待抽取的目標網頁解析成DOM樹,與抽象樹進行匹配確定目標網頁是否為包裝器對應的類型網頁;讀取配置文檔中的路徑對目標DOM樹進行抽取。本發明不僅能實現自動化生產包裝器,并且在準確率和時間性能上也有較好的表現。
技術領域
本發明屬于云計算領域,具體涉及一種基于DOM樹抽象的包裝器自動生成方法。
背景技術
傳統的包裝器都由人工定義,要為不同類型的頁面制作不同的包裝器,因此包裝器的維護是一個很大的開銷,一旦原來的頁面風格變了,原來的包裝器也就需要重新定義。因此,目前主流的研究趨勢是包裝器的自動生成,本申請提出一種可行的基于DOM樹抽象的包裝器自動生成技術。該技術主要有兩個部分組成:第一,目標類型網頁的DOM樹抽象;第二,目標節點的特征獲取和定位。運用該技術可以對多種類型的網頁實現包裝器的自動生成。針對5個網站進行了實驗,實驗結果表明該方法的可行性和有效性。
發明內容
本發明的目的在于提供一種基于DOM樹抽象的包裝器自動生成方法,該方法不僅能實現自動化生產包裝器,并且在準確率和時間性能上也有較好的表現。
為實現上述目的,本發明的技術方案是:一種基于DOM樹抽象的包裝器自動生成方法,包括如下步驟,
步驟S1、包裝器生成階段:
步驟S11、用戶輸入網頁集合,通過網頁預處理去除源碼中的雜質信息,并解析成DOM樹,得到DOM樹集合;
步驟S12、對DOM樹進行合并,遍歷DOM樹對相同標簽的子節點進行合并,并且針對每個節點進行路徑特征標注,最終將DOM樹集合轉化為合并樹集合;
步驟S13、對合并樹集合進行抽象操作得到抽象樹,并將抽象樹存入數據庫中;
步驟S14、根據配置文檔確定結構化數據在合并樹中的路徑特征,將對應的路徑特征經過處理后寫入文檔中,生成包裝器;
步驟S2、結構化數據抽取階段:
步驟S21、將待抽取的目標網頁解析成DOM樹;
步驟S22、將DOM樹與抽象樹進行匹配確定目標網頁是否為包裝器對應的類型網頁;
步驟S23、讀取配置文檔中的路徑對目標DOM樹進行抽取。
在本發明一實施例中,所述步驟S12采用CombinerTree算法實現將DOM樹集合轉化為合并樹集合,具體的CombinerTree算法實現如下:
(1)設child[n0]為DOM樹Ti的根節點vi子節點;
(2)輸入節點vi,若vi存在子節點,則獲取vi的子節點并存入child[n0];
(3)對child[n0]中的所有子節點進行兩兩判斷:
假設選取的兩個vi的子節點為k、h,若k≠h,并且k的標簽=h的標簽,則獲取子節點h的子節點并存入temp[m]中;而后,將temp[m]添加為子節點k的子節點,移除子節點h;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于福州大學,未經福州大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711172974.8/2.html,轉載請聲明來源鉆瓜專利網。





