[發明專利]一種從維基百科半結構化數據自動構建分類樹的方法有效
| 申請號: | 201410040234.9 | 申請日: | 2014-01-27 |
| 公開(公告)號: | CN103778238A | 公開(公告)日: | 2014-05-07 |
| 發明(設計)人: | 劉均;魏筆凡;馮博琴;鄭慶華;馬健;王晨晨;吳蓓 | 申請(專利權)人: | 西安交通大學 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 西安通大專利代理有限責任公司 61200 | 代理人: | 蔡和平 |
| 地址: | 710049 陜*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 百科 結構 數據 自動 構建 分類 方法 | ||
1.一種從維基百科半結構化數據自動構建分類樹的方法,其特征在于,包括以下步驟:
第1步、半結構化數據的抽?。和ㄟ^分析獲取到頁面的HTML,識別出含有半結構化數據的頁面,所述半結構化數據指維基百科目錄頁面及維基百科條目頁面中的導航表格;
第2步、半結構化數據中上下位關系的抽?。撼槿【S基百科目錄頁面中上下位關系和導航表格中上下位關系;
第3步、源于不同半結構化數據的上下位關系融合:依據抽取到的上下位關系集構建向有向無權簡單圖,然后基于圖的深度優先遍歷算法生成分類樹。
2.根據權利要求1所述的一種從維基百科半結構化數據自動構建分類樹的方法,其特征在于,第1步具體包括以下步驟:
第1.1步:從維基百科網站首頁www.wikipedia.org開始,通過解析頁面的超鏈接逐層爬取所有頁面,依據頁面URL前綴“http://en.wikipedia.org/wiki/”獲取條目頁面,依據URL前綴“http://en.wikipedia.org/wiki/Category:”獲取目錄頁面,每個頁面對應一個實體,頁面標題為該實體的名字;
第1.2步:根據條目頁面是否含有HTML標簽<table?class=″navbox″>,篩選出含有導航表格的條目頁面。
3.根據權利要求1所述的一種從維基百科半結構化數據自動構建分類樹的方法,其特征在于,第1步具體包括以下步驟:
1):通過Web頁面爬取工具爬取維基百科首頁http://www.wiki?pedia.org/并進行解析,然后依據HTML標簽<a>和</a>找出該頁面中的所有匹配模式http/:∨∨[a-z]+/.wikipedia/.org∨的超鏈接,記為{head_linki}n,其中n表示所有不同語言的維基子網站數目;每個這樣的超鏈接head_linki對應一種語言的維基百科子網站,并且是該子網站的首頁,枚舉每個維基子網站首頁的超鏈接head_linki;
2):構建空的哈希表,該哈希表用來記錄某個頁面是否已經被爬取過,使用頁面的URL地址來標識不同的頁面;
3):設置當前爬取頁面地址為當前維基子網站首頁,current-link=head_linki;
4):在HashSet查詢current_link,如果命中,表明頁面已經被爬取過,則不再爬取跳轉到第8步;如果該頁面沒有爬取過,則通過Web頁面爬取工具爬取該頁面,并將該鏈接加入到HashSet中,即執行HashSet.add(current_link);
5):如果該頁面URL前綴是“http://en.wikipedia.org/wiki/Category:”,則保存該頁面到ArticleSet,并跳轉到第7)步;
6):如果該頁面URL前綴是“http://en.wikipedia.org/wiki/”,進一步判斷該條目頁面是否含有HTML標簽<table?class=″navbox″>,如有則保存該頁面到CategorySet;
7):解析該頁面,依據HTML標簽<a>和</a>找出該頁面中的所有超鏈接{hype?rlinki}m,將所有這些超鏈接壓入超鏈接棧LinkStack中,即LinkStack.pushAll({hyperlinki}m);
8):如果LinkStack不為空,current_link=LinkStack.pop(),跳轉到第4步;如果LinkStack為空,退出。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安交通大學,未經西安交通大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410040234.9/1.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





