TWI387890B - A method of converting a hypertext label language file into a plain text file - Google Patents
A method of converting a hypertext label language file into a plain text file Download PDFInfo
- Publication number
- TWI387890B TWI387890B TW097146687A TW97146687A TWI387890B TW I387890 B TWI387890 B TW I387890B TW 097146687 A TW097146687 A TW 097146687A TW 97146687 A TW97146687 A TW 97146687A TW I387890 B TWI387890 B TW I387890B
- Authority
- TW
- Taiwan
- Prior art keywords
- content
- sentence
- file
- block
- plain text
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
- G06F40/143—Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Description
本發明是一種網頁內容的萃取方法,特別是有關一種可以從超文字標籤語言(Hyper Text Markup Language,HTML)文件中找出和HTML文件主題最接近的重要內容,並將此重要內容輸出為純文字文件的方法。
HTML文件是一種可以被網路瀏覽器(browser)讀取,再以網頁方式顯示其內容的一種文件。和一般純文字文件(txt file)不同的是,HTML文件的內容不僅包含純文字的部份,還包含了許多的標記(tag)和其他格式的資訊如影像或是影片,而標記的作用在指示網路瀏覽器,以指定的形式,將內容顯示在網頁之中,使網頁的內容更豐富且具備多樣性。但是目前有許多攜帶型的電子產品由於硬體的限制,例如較小的顯示器而無法顯示完整的網頁內容,也有一些應用程式只需要擷取或是顯示網頁中特定的文字內容,而不希望包含其他不重要的雜訊,所以為了支援這些應用程式(application)或是裝置,已有廠商發展出一些可以將HTML文件中的純文字內容萃取出來的技術。
在已核准的中華民國發明專利434492提出了「一種超媒體文件轉換為語音之方法」’其中提到了一種超媒體標示語言剖析器可以分析超媒體文件檔案(即HTML文件)的內容,將其分離成文字內容、標示文件結構的超媒體標籤及控制發音方式的發音控制指令,但是在此專利技術中並未進一步對分離出來的文字內容進行
處理,以除去可能存在不重要的或是與文件主題無關的雜訊。
在已核准的中華民國發明專利200813763提出了「多線程分析網頁資料的系統及方法」,揭露了一種基於分析規則,利用一判斷模組對XML格式網頁的內容中是否有相應的分析規則,再依判斷結果決定是否再利用一分析模組對網頁內容進行評估,及根據所述分析規則中的限定判斷所述分析後的網頁內容是否符合評估要求,期望能快速、有效地萃取所需瀏覽網頁中的資訊;但是在此一技術中並未詳細揭露所述的分析規則。
另外一種已知將HTML文件轉換成純文字內容的技術,首先是對HTML文件做標籤的處理,刪除不重要的標籤、和其中一些標籤內夾帶的內容,接著從剩餘的內容中把剩餘標籤內夾帶的文字或句子提取出來,以這些句子當中最長的句子為基礎句子(base句子),從base句子向前及向後以尋找在一預定範圍內(例如10個相鄰句子範圍)且長度夠長的句子,這個過程稱為距離擴散尋找步驟,一旦找到這種句子就再從找到的句子,再往外尋找預定範圍以內是否還有長度夠長的句子,直到找不到為止,最後將最前面的一句到最後面的一句範圍內所有的句子提出來,即為最後的純文字內容,再將這個純文字內容輸出為純文字文件。
上述將HTML文件轉換成純文字內容的技術,存在著一些問題如下:
1.重要內文區塊中間夾雜的不重要句子或文字,也會一併被萃取出來。
2.有的文章前後句子很短,若是未達到預設的長度就會被略
過而無法被萃取出來,也不會在擴散尋找的過程中被找出來。
3.有時最長的句子或文字未必是重要的內文,雖然最長的句子通常是重要內文的機率很高,但也會有例外的情況,例如某一網頁內的新聞內容非常短,但是這個新聞內容才是重要的句子或文字,如廣告或其他新聞超連結可能是最長的句子或文字,並不是我們所認為重要的句子或文字,若是採用前述的習知技術,就會出現挑選內容完全錯誤的情況發生。
因此、如何在HTML文件,特別是從網頁內容中找出和文件標題相關的純文字內容,才是我們所關心的課題,僅僅是把HTML文件中的純文字內容萃取出來是不夠的,如果萃取出來的純文字內容又與HTML文件的標題無關,也非我們所期待的結果。
本發明的目的在提出一種可以從超文字標籤語言文件(HTML文件)中提取重要的內容的方法,換言之就是可以簡化HTML文件的內容,只將其中重要的內容提取出來成為純文字文件的一種方法。
本發明的目的之一在提出一種可從HTML文件中提取和HTML文件標題最接近之內容,並輸出成為純文字文件的方法。
為達上述目的,本發明之方法的較佳實施例包括下列步驟:1、取得HTML文件;2、執行標籤處理步驟,去除HTML文件中大部份不
必要的標籤及標籤所包含的內容(雜訊),以保留有用的HTML文件段落,在保留的文件段落中包含至少一個目的標籤及目的標籤所包含的內容;
3、從保留的HTML文件段落中將目的標籤及其他剩餘標籤的內容提取出來,並依序記錄其相關訊息於一資料結構;更包括從該資料結構所記錄的訊息中由第一筆往下依序尋找HTML文件標題,找出該HTML文件標題後,將資料結構中所記錄的該HTML文件標題之前的訊息內容全部刪除。
4、根據資料結構所記錄的訊息進行段落區隔之步驟,藉以區隔出至少一個目標區塊;
5、將目標區塊與HTML文件標題作關聯性比對,以找出最接近HTML文件標題之文意的目標區塊,並將目標區塊之內容輸出成為純文字文件。
其中,該資料結構可以是陣列或是表格或是其他類型的資料結構,其功能是在後續的處理步驟中暫時地記錄有需要的相關訊息。
本發明所揭露的方法還包括:以一預設之句子索引值作為段落區隔的依據,將保留的HTML文件段落區隔為數個目標區塊,再進一步從這數個目標區塊中找出最接近HTML文件標題之文意的目標區塊,然後將此一目標區塊的內容輸出成為純文字文件。
本發明所揭露的方法還包括:以目的標籤作為段落區隔的依據,將位在不同的目的標籤附近的內容分類為
不同的目標區塊,再進一步從這些分屬不同之目的標籤類別的目標區塊中找出最接近HTML文件標題之文意的目標區塊,然後將此一目標區塊的內容輸出成為純文字文件。
本發明所揭露的方法還包括:依一最長句搜尋步驟從保留的HTML文件段落中找出重要的內容再輸出為純文字文件。
本發明揭露的較佳實施例方法,還包括:以一擴散搜尋步驟,將分屬不同之目的標籤類別的目標區塊中的內容細分為數個小區塊,再依據小區塊的內容找出和HTML文件標題之文意最接近的小區塊,然後將被找出的小區塊的內容輸出成為純文字文件。
本發明還揭露了一種利用空間向量模型分析,從多個目標區塊或是多個小區塊之中找出一個或多個和HTML文件標題之文意最接近者設為甚礎區塊,再找出其他和基礎區塊相似度高於一預設之相似度門檻值的小區塊,並將這些相似度高於相似度門檻值之小區塊的內容和基礎區塊的內容合併,再輸出成為純文字文件。依據本發明所揭露的技術方案可以獲致的功效包括:
1. HTML文件中間夾雜的非重要的內容或句子幾乎不會被提出來,因為非重要的內容或句子幾乎不會出現在本發明所選定的目的標籤附近。
2.重要但太短的內容或句子不會被忽略,非重要
但很長的內容或句子也不會錯誤地被提取出來,因為本發明優先以HTML文件中的內容是否出現在目的標籤附近而決定是否提取出來,而不是依內容或是句子的長度來尋找重要的內容。
3.藉由搜尋標題,以刪除標題前面所有內容,使得處理的資料量更加精簡。在一網頁中,重要的純文字內容皆出現在標題之下,故我們將標題前面所有無用的內容刪除,將更加精簡資料處理量,使純文字結果更精確、效率提升。
4.本發明更利用關聯性分析和空間向量模型分析方法,在多個目標區塊或是小區塊中找出一個或多個和HTML文件標題之文意最接近以及相似度高於相似度門檻值的目標區塊或是小區塊,並將這些內容合併再輸出成為純文字文件;因此可以更準確地找出HTML文件中的重要內容並輸出成為純文字文件。
有關上述提及的HTML文件標題,其係可為HTML Title Tag,或我們實際應用的Item Title of RSS Feed,或甚至是Summary(description)of RSS Feed等。本發明的技術內容及其較實施例,茲配合圖示詳細說明如下。
「第1圖」顯示了用以實施本發明之方法的電腦系統架構的一種較佳的實施例,所述的電腦系統架構包括:一中央處理器10、主記憶體11、網路通訊介面12、輸入裝置13(如鍵盤和滑鼠)、以
及儲存裝置14,以上這些部件彼此可以相互通訊,其中的儲存裝置14可以是磁碟機或是其他電腦可讀取的記錄媒體,用於儲存資料和用以實現本發明之方法步驟的程序(process)。主記憶體11可用來儲存資料及程序,但通常是用來儲存中央處理器10目前正在執行的程序及相關資料。中央處理器10則是用來執行前述程序中的指令並作相關的處理資料。網路通訊介面12可與網路(可為網際網路-internet或是區域網路local area net)連接,網路通訊介面12的較佳實施例可以是乙太網路卡(ethernet card)或是其他型態之網路卡。
「第2圖」揭露了本發明的一種較佳實施例的步驟流程圖,包括:A、透過網路取得HTML文件,並儲存於儲存裝置14;B、執行標籤處理步驟,去除HTML文件中大部份不必要的標籤及標籤所包含的內容(雜訊),以保留有用的HTML文件段落,在保留的HTML文件段落中包含至少一個目的標籤和此一目的標籤所包含的內容;C、從保留的HTML文件段落中,將目的標籤及其他剩餘標籤之內容提取出來,並依序記錄其相關訊息於一資料結構中,這裡所指的資料結構可以是陣列或是表格或是其他類型的資料結構,其功能是在後續的處理步驟中暫時地記錄有需要的相關訊息;D、根據此資料結構中所記錄的訊息進行段落區隔之步驟,藉以區隔出至少一個目標區塊;以及
E、將目標區塊與HTML文件標題作關聯性比對,以找出最接近HTML文件標題之文意的目標區塊,並將目標區塊之內容輸出成為純文字文件。
其中在步驟B對HTML文件做標籤處理的步驟,其目的在於刪除HTML文件(指HTML原始碼)中大量不需要的雜訊,一般而言網頁的HTML文件中,往往會有許多不同的標籤參雜在其中,大多數以相應的頭標籤”<xxx>”及尾標籤”</xxx>”等型態出現(例如<a...>、</a>,<font...>、</font>等等),但也有少部分例外,如註解標籤:<!-- -->、或是段落標籤<p>有時只會單獨出現,不會有尾標籤</p>伴隨。這些不同的標籤,有其不同的功用。由於HTML文件的篇幅往往都非常大,但是重要的內容只出現在其中一小部分,於是本發明首先針對重要的內容不可能出現的標籤範圍,先將HTML文件的內容做大幅度的刪減。刪減步驟如「第3圖」所示,包括:B.1保留HTML文件中標籤<body>和</body>中間的部份;B.2刪除註解標籤<!-- -->和其中間夾雜的內容;註解標籤包含的內容為用來解釋網頁原始碼的寫法,以便自己撰寫網頁、或是日後維護修改網頁時,容易了解原始碼的涵義。因此其中的內容和網頁的重要內文並沒有關係,直接刪除之;B.3刪除標籤<script></script>和中間夾雜的內容(這類標籤夾雜的內容並不重要,將這些標籤和其中夾雜的內容都一併刪除);B.4刪除標籤<style></style>和其中間夾雜的內容(這類標籤
夾雜的內容並不重要,將這些標籤和其中夾雜內容都一併刪除);B.5刪除空白行(超文字標籤語言內容往往包含一些甚至大量空白行,將這些空白行刪除);以及B.6刪除超連結標籤<a></a>、字體字型標籤、<span></span>和圖形標籤<img>;超連結標籤和字體字型等標籤夾雜的內容通常都很重要,並且很可能出現在重要的內容之中,例如當某一段重要的內容中有個關鍵詞,需要呈現粗體效果,或是加上超連結,這類標籤就會出現在重要的內容中;至於圖片標籤會出現在圖片附近。為了保持重要內容的連貫性,需將這些標籤刪除,重要的內容才不致被這些標籤切割成好幾部分。
實例:<p>一頭黑熊走進<a id="yui-gen0" class="ynwsyq yqclass" title="加拿大" href="http://tw.news.yahoo.com/article/url/d/a/081005/1/17462.html?">加拿大</a>卑詩省一家三明治店,細細的聞了一遍各種佐料,沒聞到喜歡的,就離開了。</p>
這段HTML文件在瀏覽器中將會顯示為”一頭黑熊走進加拿大卑詩省一家三明治店,細細的聞了一遍各種佐料,沒聞到喜歡的,就離開了。”因為中間”加拿大”三個字在網頁中,以超連結方式顯現,以致於在原始碼中,有超連結標籤<a>和</a>出現在裡面,如果不加以處理,這個完整的內容將被切成三句內容:
1.一頭黑熊走進
2.加拿大
3.卑詩省一家三明治店,細細的聞了一遍各種作料,沒聞到
喜歡的,就離開了。
這並不是一個很理想的情況,一整個連貫的內容硬是被切成幾個部份。因此本發明的方法只是將這類超連結標籤、和字體字型標籤和圖片標籤全部刪除,使得語意連貫的完整內容可以一次全部提取出來,而不會被分割成好幾個部份。
一般而言在HTML文件中真正重要的內容,往往都出現在標籤<p>或標籤<br>附近,因此,本發明在標籤處理步驟中將標籤<p>和標籤<br>設為「目的標籤」,再依據前述「第3圖」的標籤處理步驟,將HTML文件中大部份不必要的標籤及這些標籤所包含的內容(雜訊)除去之後,將位於標籤<p>和標籤<br>附近的內容提取出來,再和其餘僅除去標籤之後所留下的內容或段落,一併作後續的處理。
前述步驟C的具體實施方式,現舉一實例說明如下。假設在步驟B的標籤處理步驟完畢之後,剩餘的HTML文件內容為:“<li>PPP</li>QQ<p>RR<p>SSS<h1>TITLE</h1><div><br>AAAAA</br><p>BBBBBBB</div><p>CCC<h2>DDD</h2><p>EEEEEEE<p>FFFF<div><li>TT</li><li>UUU</li><td>VVVVV</td><td>WWWW</td><td>XXXXX</td><li>YYY</li><li>ZZZZZ</li></div><br>GGGGG</br><br>HHHH</br>”
其中的句子PPP、QQ、RR、SSS、TITLE、AAAAA、BBBBBBB、CCC、DDD、EEEEEEE、FFFF、TT、UUU、VVVVV、WWWW、XXXXX、YYY、ZZZZZ、GGGGG和HHHH分別被不同的標籤夾住,像這類被標籤夾住的內容,本發明的方法是將
其提取出來並將其相關資訊存入一資料結構,這些相關資訊包括了:每句內容的索引值(index),內容長度、及內容前後是否有出現目的標籤等等相關資訊(這裡的標籤<p>中,</p>、<p xxx>也都歸類為標籤<p>,標籤<br>亦比照相同原則處理),其中的索引值為剩餘標籤當中提取出來的句子,按照前後順序依序給予的值,以便後續的較佳實施例步驟中作為判斷每句內容間之相對位置距離的參考資訊,所述資料結構的內容可以是如下列「表1」所示的例子。
承上述例子,經過提取之後得到的句子和其索引值如「第5A圖」所示。在「第5A圖」中的左方係為各句子的索引值,右方係為各句子之內容。
本發明的另一較佳實施例方法,前述的步驟C更包括了一藉由搜尋標題(TITLE)並且刪除標題前面所有內容的步驟C-1,可以使得後續步驟D至步驟E中處理的資料量更加精簡。一般而言、在一網頁中,重要的純文字內容皆出現在標題之下,故我們將標題前面所有無用
的內容刪除,將更加精簡資料處理量,使純文字結果更精確、效率提升。
步驟C-1的較佳處理流程,請參閱「第4圖」,包括:C-1.1、從資料結構中,第一筆資料內容依序往下搜尋標題位置;C-1.2、當找到標題時,將標題前面所有內容刪除,然後結束處理流程;以及C-1.3、當沒有找到標題,並且未搜尋到最後一筆,則繼續尋找下一筆資料。上述C-1.3搜尋標題的動作,將持續往下搜尋,直到搜尋到標題並返回前述步驟C-1.2做刪除內容之動作,或是搜尋到最後一筆資料卻都搜尋不到標題,而結束處理流程。
而前述「第5A圖」中的資料結構,再經過上述步驟C-1處理完畢之後的內容,如「第5B圖」所示其中的資料量將比利用步驟C-1處理之前的資料量較少,將更加精簡資料處理量,使純文字結果更精確、效率提升。
而在本發明以下的實施例說明中的其餘步驟D及步驟E,皆可適用於前述「第5A圖」及「第5B圖」之資料結構所包含的例子。
如「第6圖」所示,依據本發明方法的較佳實施例,其中的步驟D所述的「段落區隔」的第一種較佳實施例,包括以下步驟:
D-11、在保留的HTML文件段落中由上往下尋找出第一句位於目的標籤(可能為標籤<p>或是標籤<br>)附近的句子,設為第一個基礎句子(base句子);D-12、從第一個基礎句子向下尋找下一句位於目的標籤附近的句子,若是沒有找到另一句子,則執行步驟D-15;D-13、當前一步驟中被找到的句子的索引值和目前的基礎句子間的索引值距離在一預設的距離門檻值內,就以找到的句子設為目前的基礎句子,然後返回執行上一步驟D-11,若是索引值距離大於前述預設的距離門檻值,則繼續下一步驟;D-14、將上述第一個被找到的基礎句子到上一句子之間的所有句子組合成一目標區塊,並設目前句子為第一個基礎句子,然後返回執行上述步驟D-12;D-15、將第一個基礎句子到此句子之間的所有句子,組合成一目標區塊。
「第6圖」所示的步驟主要就是把一個或多個彼此之索引值距離在一預設距離門檻值內的句子集合為一個目標區塊,而較佳的預設距離門檻值可為1~5。換言之就是當索引值距離超過預設的距離門檻值(例如5),就將索引值距離較遠的一句內容分到下一個目標區塊。
特別需要注意的是,本發明對於位在搜尋範圍內但不是前述之目的標籤的句子亦會將其提取出來。舉例來說,在「第5A圖」中的句子「DDD」的前後標籤雖然不屬於標籤<p>、或標籤<br>。
但是句子「DDD」也夾在搜尋的範圍內(假設預設的距離門檻值為5)的句子,因此就算不在標籤<p>、或標籤<br>附近也會被提出來。在根據步驟D11~D15之處理後,可以得到如「第7圖」所示的多個目標區塊,分別為第一目標區塊和第二目標區塊。
前述的步驟E所稱的關聯性比對的具體實施方式,可以利用如「詞頻統計」或是重複字詞的數量分析等方式(此為已知技術,不再詳述),從多個目標區塊中找出和HTML文件標題的文意最接近者,再將這個被找出來的目標區塊中的內容輸出成為純文字文件。
其中,在步驟E中更包括以下步驟,並請參考「第8圖」所示:E-11、若是有多個目標區塊,則將這些目標區塊與HTML文件標題作關聯性比對,找出最接近HTML文件標題之文意的目標區塊設為基礎區塊;以及E-12、利用空間向量模型分析,將其他目標區塊一一與基礎區塊做計算,找出和基礎區塊相似度高於一預設之相似度門檻值的其他目標區塊,並將這些目標區塊的內容和基礎區塊的內容合併,再輸出成為純文字文件。
有關上述提及的HTML文件標題,其係可為HTML Title Tag,或我們實際應用的Item Title of RSS Feed,或甚至是Summary(description)of RSS Feed等。
前述步驟D所述之「段落區隔」的另一種較佳實施方式,主要是以目的標籤的類別作為段落區隔的依據,區隔的方
法是依據資料結構所記錄的訊息,挑出所有在目的標籤(標籤<p>和標籤<br>)附近的內容,再根據目的標籤進行群組區隔分類,將目的標籤附近的內容分類為不同的目標區塊;其中出現在標籤<p>附近的內容歸類於標籤<p>類的目標區塊、出現在標籤<br>附近的內容歸類於標籤<br>類的目標區塊。
在此一實施態樣中步驟D更包括以下步驟,請參考「第9圖」所示:D-21、挑出所有目的標籤包含的內容,並依據目的標籤進行群組區隔分類,將位在不同的目的標籤附近的內容分類為不同之目的標籤類別的目標區塊。
以前述剩餘的HTML文件內容為例:”<li>PPP</li>QQ<p>RR<p>SSS<h1>TITLE</h1><div><br>AAAAA</br><p>BBBBBBB</div><p>CCC<h2>DDD</h2><p>EEEEEEE<p>FFFF<div><li>TT</li><li>UUU</li><td>VVVVV</td><td>WWWW</td><td>XXXXX</td><li>YYY</li><li>ZZZZZ</li></div><br>GGGGG</br><br>HHHH</br>”;在經過上述步驟D-21處理之後,結果如「第10圖」所示將被區隔為標籤<p>類的目標區塊和標籤<br>類的目標區塊。
由於上述的步驟D-21主要是以目的標籤作為段落區隔的依據,實務上被分類為某一目的標籤類別的目標區塊的內容,可能還包括了多個句子,特別是這些句子的索引值相差很大時,為了可以更準確的從其中找到重要的內容,還有必要對這些句子作進一步的區隔藉以生成不同的小區塊,因此本發明利用一擴散搜尋步驟進一步將
目的標籤類別之目標區塊的內容區隔為多個小區塊,而此一擴散搜尋步驟的較佳實施例步驟,如「第11圖」所示,包括:D-211、從某一目的標籤類別的目標區塊中的第一句內容作為第一個基礎句子,開始向下尋找下一句子並將找到的句子設為目標句子,若找到的目標句子和基礎句子的索引值距離小於一預設的距離門檻值(例如預設的距離門檻值為10),則設此目標句子為新的基礎句子,並繼續向下尋找下一句子,否則將第一個基礎句子和目標句子的上一句被找到的句子之間,這些兩兩距離不超過門檻值的句子,合併為一小區塊。重複上述步驟,直到目的區塊的所有句子都搜尋過,以建立一目標區塊中的不同小區塊。
以「第10圖」中標籤<br>類的目標區塊為例:
index 6:AAAAA
index 19:GGGGG
index 20:HHHH
在這個例子中,從索引值6的這一句內容開始往下推,和接下來索引值19的這句內容的索引值距離有13,大於預設的距離門檻值(10),故將索引值6的這一句和索引值19的這一句分隔為不同的小區塊;同理,從索引值19的這一句內容再開始向下尋找和下一句內容的索引值20的距離只有1,小於預設的距離門檻值(10),故將索引值19的這一句和索引值20的這一句合併為同一個小區塊,以後依此類推,直到這個目的標籤類別的目標區塊中的
每一句內容都檢查完畢。因此,「第10圖」中標籤<br>類的目標區塊在經過擴散搜尋步驟D-211的處理之後的結果將如「第12圖」所示,其中的“AAAAA”將被區隔為「第一小區塊」,而“GGGGG”和”HHHH”將被區隔為「第二小區塊」。
HTML文件在依據本發明前述的步驟D-21處理之後,基本上可能會產生下列的三種結果:第一種結果:只存在標籤<p>類的目標區塊;第二種結果:只存在標籤<br>類的目標區塊;以及第三種結果:同時存在標籤<P>類的目標區塊和標籤<br>類的目標區塊。
對於第一種結果和第二種結果而言,若是再經過前述步驟D-211的處理之後,在標籤<p>類的目標區塊或是標籤<br>類的目標區塊中都沒有多個小區塊,則直接將標籤<p>類的目標區塊或是標籤<br>類的目標區塊中的內容輸出為純文字文件。
對於第一種結果和第二種結果而言,若是再經過前述步驟D-211的處理之後,在標籤<p>類的目標區塊或是標籤<br>類的目標區塊中具有多個小區塊,本發明前述的步驟E則會進一步利用和標題的文意比對及空間向量模型分析,從所有小區塊之中找出適合的區塊,再將其內容合併後輸出成為純文字文件,其步驟如「第13圖」所示,包括:E-31將多個小區塊與HTML文件標題作關聯性比對,找出最接近HTML文件標題之文意的小區塊設為基礎區塊;以及
E-32利用空間向量模型分析在目標區塊中找出和基礎區塊之相似度高於一預設之相似度門檻值N的所有小區塊,再和基礎區塊合併成為重要的內容後,輸出為純文字文件。
對於前述第三種結果而言,本發明前述的步驟E將會依據「第14圖」所示的步驟在標籤<p>類的目標區塊和標籤<br>類的目標區塊中找出重要的內容,然後輸出為純文字文件,其步驟包括:E-41、若這(些)目標區塊內包含其他小區塊,則將各個小區塊的內容與HTML文件標題作一關聯性比較,找出和HTML文件標題的文意最近似的小區塊設為一基礎區塊;E-42、當沒有其他的小區塊時,將基礎區塊的內容作為重要的內容輸出為純文字文件;以及E-43、當還有其他的小區塊時,利用空間向量模型分析,將其他的小區塊一一與基礎區塊做計算,找出和基礎區塊相似度高於預設之相似度門檻值之小區塊,並將這(些)被找出的小區塊之內容與基礎區塊之內容合併後輸出成為純文字文件。
舉例說明:
一、假設一網頁的標題、標籤<p>類的目標區塊和標籤<br>類的目標區塊內容分別如下:標題:海角票房衝破3億!演員驚喜期待衝4億標籤<p>類的目標區塊:小區塊1:國片海角七號掀起的風潮至今仍然沒有退燒的跡象,因為
票房截至剛過去的這個週末已經達到3億2千萬,不但榮登今年華語片賣座龍頭的寶座,現在也挑戰華語片賣座冠軍、16年前由成龍主演的「警察故事3:超級警察」;以3億的票房推估,有民眾看了18次之多。
小區塊2:熱力席捲全台的海角七號票房持續發酵,截至10月5號為止,全台票房已經來到3億2千萬,現在有許多年輕人見面都在聊海角七號,不論是男女主角的愛情故事、片中演唱會上范逸臣演唱的歌曲,抑或是人氣指數超高的「國寶」茂伯,都是全民話題,這股海角熱持續推升海角票房,讓本片打破今年原本最賣座的華語片「赤壁」,以及去年李安的「色‧戒」票房;如果以3億的票房估算,全台灣有100萬名觀眾進戲院看過海角,甚至有觀眾重複觀賞了18次之多。
標籤<br>類的目標區塊:
小區塊1:*女性影展特闢「韓國女流」 金敏芝將來台力挺*威廉21歲生日遭惡整 妹妹的生日卡片讓他哽咽*電影情報站/不能來台宣傳 冰火情敵女主角翻臉*劉真再出書 首開金嗓唱「森巴」和「恰恰」*為流浪動物獻愛心 朱天心與獸醫惺惺相惜
小區塊2:*海角七號將跨海來洛杉磯參加台灣影展*巴黎時尚週 LV這回走非洲風
*《海角七號》裡的磁性嗓音 他~是25歲的型男蔭山征彥*海角離別送行最後一幕 500人臨演當地居民軋一角*蔡依林飛赴紐約 拜街頭爵大師習舞
這四個小區塊經過個別和HTML文件標題逐字比較,重複字詞分別為:標籤<p>類的目標區塊之小區塊1:(3,億,海角,演,票房)標籤<p>類的目標區塊之小區塊2:(3,億,海角,海角票房,演,破,票房,角)標籤<br>類的目標區塊之小區塊1:(角)標籤<br>類的目標區塊之小區塊2:(海,海角,演,角)其中以標籤<p>類的目標區塊中的小區塊2和HTML文件標題重複字詞最多,我們就以標籤<p>類的目標區塊的小區塊2為基礎區塊,而重要的純文字內容應該就在標籤<p>類的目標區塊之中。
二、若是標籤<p>類的目標區塊裡面的小區塊數超過1,則製作空間向量模型,並對此標籤<p>類的目標區塊之中的各個小區塊做空間向量模型分析,比較基礎區塊和其他小區塊的空間向量相似度,若是相似度高過一相似度門檻值N,我們就認定這個小區塊和基礎區塊的文意相似度高,將這個小區塊和基礎區塊合併成為最終輸出的純文字文件。本發明的較佳實施例之一是將預設的相似度門檻值N設為0.6。
例:以上一個例子而言,標籤<p>類的目標區塊中的小區塊2
為基礎區塊,並且這個標籤<p>類的目標區塊內有2個小區塊,數量超過1,於是對標籤<p>類的目標區塊中的2個小區塊製作空間向量模型,而製作向量空間模型的過程為:在這2個小區塊中,找出了三個關鍵字詞:票房、海角、全台,則針對這2個小區塊,製作一三維空間向量模型,由於小區塊1出現票房2次、海角1次、全台0次,所以小區塊1的空間向量為(2,1,0),而小區塊2出現票房5次、海角3次、全台3次,所以小區塊2的空間向量為(5,3,3)。將非基礎區塊的小區塊1的空間向量(2,1,0)和基礎區塊(小區塊2)的空間向量(5,3,3)作相似度計算,兩向量的餘弦值為,高於門檻值0.6,於是我們判斷小區塊1和基礎區塊在文意上非常接近,可以一起被挑選出來,成為重要的內容,再輸出成為純文字文件。
「第15圖」揭示了前述步驟D中所述之「段落區隔」的另一種較佳實施例,此種實施例係依據「最長句搜尋步驟」,在保留的HTML文件段落中提取出重要的內容,再直接轉為純文字文件,其步驟包括:D-31在保留的HTML段落中尋找最長的內容設為基礎句子(base句子);D-32從基礎句子向前及向後以尋找索引值距離在一預設的距離門檻值內(例如10)且內容長度達到一經計算之長度長度門檻值的一句內容,再以找到的這句內容為基礎句子再往外尋找在所述預設的距離門檻值內是否還有長度夠長的內容,直到找不到
為止;D-33最後將找到的最前至最後句子之間所有內容,提取出來作為重要的內容,再將此重要的內容輸出為純文字文件,如此將可獲得更為精確的核心純文字文件。
雖然本發明的技術手段已藉由前述之較佳實施例揭露如上,然其並非用以限定本發明,任何熟習此一技術領域者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之專利保護範圍須視本說明書所附之申請專利範圍所界定者為準。
10‧‧‧中央處理器
11‧‧‧主記憶體
12‧‧‧網路通訊介面
13‧‧‧輸入裝置
14‧‧‧儲存裝置
第1圖顯示了用以實施本發明之方法的電腦系統架構的一種較佳的實施例。
第2圖揭露了本發明方法的一種較佳實施例的步驟流程圖。
第3圖揭露了本發明方法實施例的步驟流程圖。
第4圖為本發明方法之較佳實施例中局部的詳細步驟流程圖。
第5A圖為本發明之資料結構的第一種範例。
第5B圖為本發明之資料結構的另一種範例,顯示除出標籤及標籤以前之內容後的結果。
第6圖為本發明方法之較佳實施例中局部的詳細步驟流程圖。
第7圖為本發明方法產生之目標區塊的第一種實
施例。
第8圖為本發明方法之較佳實施例中局部的詳細步驟流程圖。
第9圖為本發明方法之較佳實施例中局部的詳細步驟流程圖。
第10圖為本發明方法產生之標籤<p>類的目標區塊和標籤<br>類的目標區塊的實施例。
第11圖為本發明方法之較佳實施例中局部的詳細步驟流程圖。
第12圖為本發明方法在標籤<br>類的目標區塊中產生小區塊的實施例。
第13圖為本發明方法之較佳實施例中局部的詳細步驟流程圖。
第14圖為本發明方法之較佳實施例中局部的詳細步驟流程圖。
第15圖為本發明方法之較佳實施例中局部的詳細步驟流程圖。
Claims (14)
- 將超文字標籤語言文件轉換成純文字文件的方法,係包含下列步驟:A、取得一HTML文件;B、執行標籤處理步驟,去除該HTML文件中大部份不必要的標籤及所述的標籤所包含的內容,以保留有用的HTML文件段落,該段落包含至少一個目的標籤及該目的標籤所包含的內容;C、從該保留的HTML文件段落中將該些目的標籤及其他剩餘標籤之內容提取出來,並依序記錄其相關訊息於一資料結構中;D、根據該資料結構中所記錄的訊息依照該些目的標籤進行段落區隔之步驟,藉以區隔出至少一個目標區塊組;E-1、若該(些)目標區塊內沒有其他小區塊,則將該(些)目標區塊與該HTML文件標題作關聯性比對,找出一最接近標題文意之該目標區塊設為一基礎區塊;E-2、利用空間向量模型分析,將其他目標區塊一一與該基礎區塊做計算,找出和該基礎區塊相似度高於一預設之相似度門檻值之該目標區塊,並將該(些)被找出的目標區塊之內容與該基礎區塊之內容合併後輸出成為純文字文件;E-3、若該(些)目標區塊內包含其他小區塊,則將各個該小區塊的內容與該HTML文件標題作一關聯性比較,找出和該HTML文件標題的文意最近似的該小區塊設為一基礎區塊; E-4、當沒有其他的該小區塊時,將該基礎區塊的內容作為重要的內容輸出為純文字文件;以及E-5、當還有數個該小區塊時,利用空間向量模型分析,將其他的該小區塊一一與該基礎區塊做計算,找出和該基礎區塊相似度高於該預設之相似度門檻值之該小區塊,並將該(些)被找出的小區塊之內容與該基礎區塊之內容合併後輸出成為純文字文件。
- 如請求項1所述之將超文字標籤語言文件轉換成純文字文件的方法,其中於B步驟之標籤處理步驟還包括:B-1、保留該HTML文件中標籤和中間的部份;B-2、刪除註解標籤<!-- -->和其中間夾雜的內容;B-3、刪除標籤
和其中間夾雜的內容;B-4、刪除標籤
和其中間夾雜的內容;B-5、刪除空白行;以及B-6、刪除超連結標籤
、字體字型標籤和
、圖形標籤<img>。 - 如請求項1所述之將超文字標籤語言文件轉換成純文字文件的方法,其中該資料結構所儲存的相關資訊,包括:每一句內容的索引值(index)、該內容長度、及內容前後是否有出現該(些)目的標籤的資訊。
- 如請求項1所述之將超文字標籤語言文件轉換成純文字文件的方法,其中步驟C更包括:C-1、從該資料結構所記錄的訊息中由第一筆往下依序尋找 HTML文件標題,找出該HTML文件標題後,將資料結構中所記錄的該HTML文件標題之前的訊息內容全部刪除。
- 如請求項1所述之將超文字標籤語言文件轉換成純文字文件的方法,其中步驟D中之段落區隔步驟係包括:D-11、在保留的該HTML文件段落中由上往下尋找出第一句位於目的標籤附近的句子,設為第一個基礎句子;D-12、從該第一個基礎句子向下尋找下一句位於目的標籤附近的句子,若是沒有找到另一句子,則執行步驟D-15;D-13、當前一步驟中被找到的該句子的索引值和目前的基礎句子間的索引值距離在一預設的距離門檻值內,就以找到的該句子設為目前的基礎句子,然後返回執行上一步驟D-11,若是該索引值距離大於前述預設的距離門檻值,則繼續下一步驟;D-14、將上述第一個被找到的該基礎句子到上一句子之間的所有句子組合成一目標區塊,並設該目前句子為第一個基礎句子,然後返回執行上述步驟D-12;以及D-15、將該第一個基礎句子到此句子之間的所有句子,組合成一目標區塊。
- 如請求項5所述之將超文字標籤語言文件轉換成純文字文件的方法,其中該預設之距離門檻值為1~5。
- 如請求項1所述之將超文字標籤語言文件轉換成純文字文件的方法,其中步驟D中之段落區隔步驟更包括:D-21、挑出所有該些目的標籤包含的內容,並依據該些目的標 籤進行群組區隔分類,將位在不同的目的標籤附近的內容分類為不同的目標區塊組。
- 如請求項7所述之將超文字標籤語言文件轉換成純文字文件的方法,其中步驟D-21更包括:D-211、從該些目標區塊組中的第一句內容開始向下尋找,把一個或多個在一預設的距離門檻值內的內容集合為一個小區塊,當該索引值的距離超過該預設的距離門檻值,就將距離較遠的內容分到另一個小區塊。
- 如請求項8所述之將超文字標籤語言文件轉換成純文字文件的方法,其中該預設的距離門檻值設為1~10。
- 如請求項1所述之將超文字標籤語言文件轉換成純文字文件的方法,其中於步驟D中還包括當找不到目的標籤時,即從該保留的HTML文件段落中以一最長句搜尋步驟找出重要內容並輸出為純文字文件。
- 如請求項10所述之將超文字標籤語言文件轉換成純文字文件的方法,其中該最長句搜尋步驟包括:在該保留的HTML文件段落中尋找最長的內容設為基礎句子;從該基礎句子向前及向後以尋找在一預設的距離門檻值內且內容長度達到一預設之句子長度門檻值的內容,再以找到的該內容為基礎句子,再往外尋找在該預設的距離門檻值內是否還有長度夠長的內容,直到找不到為止;以及將找到的最前至最後句子之間的所有內容(含最後找到的 該基礎句子)提取出來作為重要的內容,再將該重要的內容輸出為純文字文件。
- 如請求項11所述之將超文字標籤語言文件轉換成純文字文件的方法,其中該預設之距離門檻值設為1~10。
- 如請求項1所述之將超文字標籤語言文件轉換成純文字文件的方法,其中該目的標籤包含標籤<p>和標籤<br>。
- 如請求項1所述之將超文字標籤語言文件轉換成純文字文件的方法,其中該相似度門檻值係為0.6。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW097146687A TWI387890B (zh) | 2008-12-01 | 2008-12-01 | A method of converting a hypertext label language file into a plain text file |
US12/628,513 US8392820B2 (en) | 2008-12-01 | 2009-12-01 | Method of establishing a plain text document from a HTML document |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW097146687A TWI387890B (zh) | 2008-12-01 | 2008-12-01 | A method of converting a hypertext label language file into a plain text file |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201022961A TW201022961A (en) | 2010-06-16 |
TWI387890B true TWI387890B (zh) | 2013-03-01 |
Family
ID=42232445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW097146687A TWI387890B (zh) | 2008-12-01 | 2008-12-01 | A method of converting a hypertext label language file into a plain text file |
Country Status (2)
Country | Link |
---|---|
US (1) | US8392820B2 (zh) |
TW (1) | TWI387890B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8924846B2 (en) * | 2009-07-03 | 2014-12-30 | Hewlett-Packard Development Company, L.P. | Apparatus and method for text extraction |
CN102270206A (zh) * | 2010-06-03 | 2011-12-07 | 北京迅捷英翔网络科技有限公司 | 一种有效网页内容的抓取方法及装置 |
US8930808B2 (en) | 2011-07-21 | 2015-01-06 | International Business Machines Corporation | Processing rich text data for storing as legacy data records in a data storage system |
CN103631769B (zh) * | 2012-08-23 | 2017-10-17 | 北京音之邦文化科技有限公司 | 一种判断文件内容与标题间一致性的方法及装置 |
US10810357B1 (en) * | 2014-10-15 | 2020-10-20 | Slickjump, Inc. | System and method for selection of meaningful page elements with imprecise coordinate selection for relevant information identification and browsing |
CN104715054B (zh) * | 2015-03-30 | 2018-04-17 | 江苏云学堂网络科技有限公司 | 将Silverlight内容转换成HTML网页内容的方法 |
US10922366B2 (en) * | 2018-03-27 | 2021-02-16 | International Business Machines Corporation | Self-adaptive web crawling and text extraction |
CN111274772A (zh) * | 2018-12-03 | 2020-06-12 | 阿里巴巴集团控股有限公司 | 删除空行的方法、装置、终端设备及计算机存储介质 |
US11328025B1 (en) | 2019-04-26 | 2022-05-10 | Bank Of America Corporation | Validating mappings between documents using machine learning |
US11783005B2 (en) | 2019-04-26 | 2023-10-10 | Bank Of America Corporation | Classifying and mapping sentences using machine learning |
CN114254592A (zh) * | 2021-12-22 | 2022-03-29 | 中国电信股份有限公司 | 网页内容的保存方法和装置、存储介质及电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6654758B1 (en) * | 2000-07-21 | 2003-11-25 | Unisys Corporation | Method for searching multiple file types on a CD ROM |
JP3880504B2 (ja) * | 2002-10-28 | 2007-02-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 構造化・階層化コンテンツ用処理装置、構造化・階層化コンテンツ用処理方法、及びプログラム |
US20050060643A1 (en) * | 2003-08-25 | 2005-03-17 | Miavia, Inc. | Document similarity detection and classification system |
US7680855B2 (en) * | 2005-03-11 | 2010-03-16 | Yahoo! Inc. | System and method for managing listings |
TW200836075A (en) * | 2007-02-16 | 2008-09-01 | Esobi Inc | Method of converting hypertext markup language web page into pure text and system thereof |
-
2008
- 2008-12-01 TW TW097146687A patent/TWI387890B/zh not_active IP Right Cessation
-
2009
- 2009-12-01 US US12/628,513 patent/US8392820B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8392820B2 (en) | 2013-03-05 |
US20100146381A1 (en) | 2010-06-10 |
TW201022961A (en) | 2010-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI387890B (zh) | A method of converting a hypertext label language file into a plain text file | |
CN106156365B (zh) | 一种知识图谱的生成方法及装置 | |
JP6122499B2 (ja) | 特徴に基づく候補選択 | |
JPH08241332A (ja) | 全文登録語検索装置および方法 | |
CN109344298A (zh) | 一种将非结构化数据转化为结构化数据的方法及装置 | |
US20050050086A1 (en) | Apparatus and method for multimedia object retrieval | |
KR101607468B1 (ko) | 콘텐츠에 대한 키워드 태깅 방법 및 시스템 | |
CN104462532A (zh) | 网页正文提取的方法和装置 | |
KR20240128047A (ko) | 비디오 생성 방법 및 장치, 전자 장치 및 판독 가능한 저장 매체 | |
JP3022539B1 (ja) | 文書検索装置 | |
CN101751403B (zh) | 将超文字标签语言文件转换成纯文字文件的方法 | |
CN111199151A (zh) | 数据处理方法、及数据处理装置 | |
KR20220055648A (ko) | 영상 각본 생성 방법 및 장치 | |
Barate et al. | A semantics-driven approach to lyrics segmentation | |
WO2021153403A1 (ja) | テキスト情報編集装置及びテキスト情報編集方法 | |
KR102275095B1 (ko) | 개인 미디어 제작을 위한 유튜브 동영상 메타데이터 취득 및 정보화 방법 | |
CN115827881A (zh) | 一种基于旅游知识图谱的多模态旅游信息定位式检索方法 | |
KR20210046254A (ko) | 광고 이미지 대한 키워드 태깅 방법 및 시스템 | |
JP6114980B2 (ja) | 楽曲処理装置および楽曲処理方法 | |
CN116955291A (zh) | 智能化文件管理方法及系统 | |
JP5182960B2 (ja) | 店舗名曖昧性解消装置、その方法、プログラム及び記録媒体 | |
Červeňanský | Automatic Image Annotation for Microstock Sites | |
Jacob et al. | An innovative Method of Accessing Digital Video Archives through Video Indexing | |
Khollam et al. | A Survey on Content Based Lecture Video Retrieval Using Speech and Video Text information | |
Naoum | Article Segmentation in Digitised Newspapers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |