正文提取
目前互聯網上公布出來的正文提取算法,大家可以綜合比較下,一起來測試下哪個更好用。 詞網--北京詞網科技有限公司 http://demo.cikuu.com/cgi-bin/cgi-contex 獵兔網頁正文提取 http://www.lie
目前互聯網上公布出來的正文提取算法,大家可以綜合比較下,一起來測試下哪個更好用。 詞網--北京詞網科技有限公司http://demo.cikuu.com/cgi-bin/cgi-contex?獵兔網頁正文提取?http://www.lietu.com/extract/?PHP版網頁正文提取http://www.woniu.us/get_content_demo/?網頁正文提取分析(DEMO)?http://61.128.196.27/txt?個人認為http://61.128.196.27/txt?這個提取最牛,基本上無論什么頁面都能提取出來,而且能有效的保持原文風格、圖片、鏈接。
http://code.google.com/p/joyhtml/
看看這個效果不錯
http://www.likeshow.net/article.asp?id=92??
我一年前寫的玩意 雖然不完善 但尚可用之在新聞和BLOG 論壇提取上 提取的正文對于BLOG和BBS包含評論及回復 具體原理也寫很清楚了
如題,想從html源碼中提取正文內容,<P></P>之間的內容,但是<P>的寫法不規則。除了正則表達式的方法,還有其它的提取方法嗎?謝謝!
最新下載
在線演示和最新下載:
http://www.shoula.net/ParseContent?
http://www.pudn.com/downloads152/sourcecode/internet/search_engine/detail668443.html
?
?
?
?
?Google Code開源網頁正文提取cx-extractor2010-05-19 12:31基于行塊分布函數的通用網頁正文抽取:線性時間、不建DOM樹、與HTML標簽無關
簡述:
對于Web信息檢索來說,網頁正文抽取是后續處理的關鍵。雖然使用正則表達式可以準確的抽取某一固定格式的頁面,但面對形形色色的HTML,使用規則處理難免捉襟見肘。能不能高效、準確的將一個頁面的正文抽取出來,并做到在大規模網頁范圍內通用,這是一個直接關系上層應用的難題。
作者提出了《基于行塊分布函數的通用網頁正文抽取算法》,首次將網頁正文抽取問題轉化為求頁面的行塊分布函數,這種方法不用建立Dom樹,不被病態HTML所累(事實上與HTML標簽完全無關)。通過在線性時間內建立的行塊分布函數圖,直接準確定位網頁正文。同時采用了統計與規則相結合的方法來處理通用性問題。作者相信簡單的事情總應該用最簡單的辦法來解決這一亙古不變的道理。整個算法實現不足百行代碼。但量不在多,在法。
項目網址:http://code.google.com/p/cx-extractor/
算法描述:基于行塊分布函數的網頁正文抽取算法.pdf
歡迎大家提出意見~?
?
http://www.ngiv.cn/post/204.html
VIPS算法對搜索引擎的意義
http://blog.csdn.net/tingya/archive/2006/02/18/601954.aspx
?
基于視覺的Web頁面分頁算法VIPS的實現源代碼下載
http://blog.csdn.net/tingya/archive/2006/04/28/694651.aspx
作者信息:飛躍,javascript教程-技術之家博客的博主?
http://www.madcn.net/?p=791
我這里有個開源的項目,還不錯,你上googlecode搜索joyhtml。
http://gfnpad.blogspot.com/2009/11/blog-post.html
下面幾個是一些開源的程序:
1.一個python的基于文本密度的程序:
http://ai-depot.com/articles/the-easy-way-to-extract-useful-text-from-arbitrary-html/
ps:里面有bug,要稍加改動。 另外,對于沒有對html注釋部分進行處理
2.Java 開源項目: Gate
http://gate.ac.uk/?
其實可以利用Dhmtl對象進行編程分析,已獲得所要的數據文件,詳細請看我的程序
http://www.vbgood.com/thread-94788-1-1.html
http://download.csdn.net/source/568439
?
一.標題塊
l 分塊節點:td,div,h,span
l 一般位于Head/Title的位置
l 當前單元含有<h1>-<h3>,<b>,<i>,<strong>等標簽
l 樣式,一般class包含title,head等字符
l 文字長度,一般大于3個字符,小于35個字符
?
二.發表時間塊
l 分塊節點:td,div, span
l 文字長度,一般小于50個字符
l 包含日期格式(2010-08-09)的字符串
l 包含以下關鍵字:來源,發表
?
三.主題塊
l 分塊節點:td,div
l HTML網頁中有一些特殊標簽,通常只出現在網頁主題塊中,如<P><BR>等。因此,主題塊中往往包含著特殊標簽。
l 主題塊內容含有較多的句子,因此具有較多逗號、句號等標點符號(>5)。
l 若從信息量角度考慮,主題塊一般是含有較多文字信息。
l 主題塊的 標簽密度=1000*標簽數/文字數 應在小于一個范圍。
l 主題塊的 文本密度=len(文本)/len(HTML代碼) 較大
l 不應該包含 “上一篇”,“下一篇”
l 包含以下字符串的內容塊,判定為包含版權信息,需減權:“ICP備04000001號”,“版權所有”,“Copyright”
l 主題塊序號在標題塊之下
l 主題塊序號在發表時間塊之下
l 主題塊序號在相關鏈接塊之上
?
四.相關鏈接塊
l 分塊節點:td,div
l 文字應為“相關鏈接”、“相關新聞”、“相關報道”等敏感詞,且連接比例很高。
l 鏈接數小于20
?
實現:
根據以上信息塊特征,采用特征提權算法,C#(3.5)編程實現,命名為QD正文提取組件。經測試,對Html格式規范的以文字為主的內容頁,正確提取率在85%以上,各大門戶的新聞頁面在95%以上。 例子下載(需要安裝Microsoft .NET Framework 3.5)
?
注:QD正文提取組件 不開源,需要源碼的朋友可選擇付費獲取。
?
這時挑選出的正文一般也就是到位了,但是問題是很可能在頭尾殘留了一些塊廣告。我認為這些塊廣告與正文中廣告有很大的不同。這些廣告的馬腳就是其父節點,它們的父節點要么也包含了正文所在區域,也就是和正文平級,要么本身就是正文所在區域的一個子節點,很難是正文節點本身的。那么對疑似正文節點進行一次掃描,剔除那些父節點文字內容過大(包含了廣告以及正文,即和正文平級)的塊,也剔除那些父節點文字內容過小的塊。
經過這樣的處理,得到的內容基本上就是我們需要的正文了。下面就是要提取標題。
在代表整個網頁的document中掃描一次,尋找那些有font字體的,strong的,h1的,title的節點,提取他們的信息。然后將得到的文字內容分詞,查驗分出來的詞有多少是被正文包含的,包含最多的一半就是標題。但是這里要注意,有時候找到的節點本身是正文節點的子節點,那么無論怎么分,分出來都是完全包含的,所以要剔除那些本身是正文一部分的疑似標題。這樣做對大部分網頁也是有效了,但是對僅有的標題就在正文節點里的那些頁面,目前為止我還沒有特別好的想法。
這些日子也研究了一些別人的論文,有很多思想都非常好,也有很多人想到用馬爾科夫,人工神經來訓練。也許以后我會考慮用用看吧。現在這樣也還可以,呵呵。?
?
這個算法我也寫了一下,不過是用C++寫的。
我不太懂樓上討論的分頁是什么意思,我通過分析dom樹然后用文中提到的規則進行dom結點處理以及后續的處理。
我主要是想把網頁中的內容按網頁框架分開,把正文部分合在一起,然后用貝葉斯決策計算正文特征支持率
提取網頁內容。
現在VIPS基本寫完。
但是卻也發現了些問題,
比如說有些結點的坐標提取出來會有提取不出分隔條,這是因為有少數坐標有些重疊。這里涉及到一個坐標的確定問題。
然后是結點分割規則問題,現在的頁面是大部分是通過DIV來組織頁面。而VIPS似乎更合適TABLE組織的頁面,我試過用TABLE組織的頁面,分得相當不錯。
另外,TINYA上面的翻譯似乎改了些規則,還有部分翻譯不是很準確。比如虛擬文本的定義部分與原文有些出入,不知道TINYA有沒有注意到。
最后,很感謝TINYA 對這個算法的介紹。
另外,有對這個算法感興趣的朋友希望能大家一起討論下
我的QQ:24888086
msn:trues541206@hotmail.com
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/tingya/archive/2006/02/18/601836.aspx
http://www.hackhome.com/InfoView/Article_119867.html
http://code.google.com/p/joyhtml/
看看這個效果不錯
http://www.likeshow.net/article.asp?id=92??
我一年前寫的玩意 雖然不完善 但尚可用之在新聞和BLOG 論壇提取上 提取的正文對于BLOG和BBS包含評論及回復 具體原理也寫很清楚了
如題,想從html源碼中提取正文內容,<P></P>之間的內容,但是<P>的寫法不規則。除了正則表達式的方法,還有其它的提取方法嗎?謝謝!
最新下載
在線演示和最新下載:
http://www.shoula.net/ParseContent?
http://www.pudn.com/downloads152/sourcecode/internet/search_engine/detail668443.html
?
?
?
?
?Google Code開源網頁正文提取cx-extractor2010-05-19 12:31基于行塊分布函數的通用網頁正文抽取:線性時間、不建DOM樹、與HTML標簽無關
簡述:
對于Web信息檢索來說,網頁正文抽取是后續處理的關鍵。雖然使用正則表達式可以準確的抽取某一固定格式的頁面,但面對形形色色的HTML,使用規則處理難免捉襟見肘。能不能高效、準確的將一個頁面的正文抽取出來,并做到在大規模網頁范圍內通用,這是一個直接關系上層應用的難題。
作者提出了《基于行塊分布函數的通用網頁正文抽取算法》,首次將網頁正文抽取問題轉化為求頁面的行塊分布函數,這種方法不用建立Dom樹,不被病態HTML所累(事實上與HTML標簽完全無關)。通過在線性時間內建立的行塊分布函數圖,直接準確定位網頁正文。同時采用了統計與規則相結合的方法來處理通用性問題。作者相信簡單的事情總應該用最簡單的辦法來解決這一亙古不變的道理。整個算法實現不足百行代碼。但量不在多,在法。
項目網址:http://code.google.com/p/cx-extractor/
算法描述:基于行塊分布函數的網頁正文抽取算法.pdf
歡迎大家提出意見~?
?
http://www.ngiv.cn/post/204.html
VIPS算法對搜索引擎的意義
http://blog.csdn.net/tingya/archive/2006/02/18/601954.aspx
?
基于視覺的Web頁面分頁算法VIPS的實現源代碼下載
http://blog.csdn.net/tingya/archive/2006/04/28/694651.aspx
作者信息:飛躍,javascript教程-技術之家博客的博主?
http://www.madcn.net/?p=791
我這里有個開源的項目,還不錯,你上googlecode搜索joyhtml。
http://gfnpad.blogspot.com/2009/11/blog-post.html
下面幾個是一些開源的程序:
1.一個python的基于文本密度的程序:
http://ai-depot.com/articles/the-easy-way-to-extract-useful-text-from-arbitrary-html/
ps:里面有bug,要稍加改動。 另外,對于沒有對html注釋部分進行處理
2.Java 開源項目: Gate
http://gate.ac.uk/?
其實可以利用Dhmtl對象進行編程分析,已獲得所要的數據文件,詳細請看我的程序
http://www.vbgood.com/thread-94788-1-1.html
http://download.csdn.net/source/568439
?
一.標題塊
l 分塊節點:td,div,h,span
l 一般位于Head/Title的位置
l 當前單元含有<h1>-<h3>,<b>,<i>,<strong>等標簽
l 樣式,一般class包含title,head等字符
l 文字長度,一般大于3個字符,小于35個字符
?
二.發表時間塊
l 分塊節點:td,div, span
l 文字長度,一般小于50個字符
l 包含日期格式(2010-08-09)的字符串
l 包含以下關鍵字:來源,發表
?
三.主題塊
l 分塊節點:td,div
l HTML網頁中有一些特殊標簽,通常只出現在網頁主題塊中,如<P><BR>等。因此,主題塊中往往包含著特殊標簽。
l 主題塊內容含有較多的句子,因此具有較多逗號、句號等標點符號(>5)。
l 若從信息量角度考慮,主題塊一般是含有較多文字信息。
l 主題塊的 標簽密度=1000*標簽數/文字數 應在小于一個范圍。
l 主題塊的 文本密度=len(文本)/len(HTML代碼) 較大
l 不應該包含 “上一篇”,“下一篇”
l 包含以下字符串的內容塊,判定為包含版權信息,需減權:“ICP備04000001號”,“版權所有”,“Copyright”
l 主題塊序號在標題塊之下
l 主題塊序號在發表時間塊之下
l 主題塊序號在相關鏈接塊之上
?
四.相關鏈接塊
l 分塊節點:td,div
l 文字應為“相關鏈接”、“相關新聞”、“相關報道”等敏感詞,且連接比例很高。
l 鏈接數小于20
?
實現:
根據以上信息塊特征,采用特征提權算法,C#(3.5)編程實現,命名為QD正文提取組件。經測試,對Html格式規范的以文字為主的內容頁,正確提取率在85%以上,各大門戶的新聞頁面在95%以上。 例子下載(需要安裝Microsoft .NET Framework 3.5)
?
注:QD正文提取組件 不開源,需要源碼的朋友可選擇付費獲取。
?
這時挑選出的正文一般也就是到位了,但是問題是很可能在頭尾殘留了一些塊廣告。我認為這些塊廣告與正文中廣告有很大的不同。這些廣告的馬腳就是其父節點,它們的父節點要么也包含了正文所在區域,也就是和正文平級,要么本身就是正文所在區域的一個子節點,很難是正文節點本身的。那么對疑似正文節點進行一次掃描,剔除那些父節點文字內容過大(包含了廣告以及正文,即和正文平級)的塊,也剔除那些父節點文字內容過小的塊。
經過這樣的處理,得到的內容基本上就是我們需要的正文了。下面就是要提取標題。
在代表整個網頁的document中掃描一次,尋找那些有font字體的,strong的,h1的,title的節點,提取他們的信息。然后將得到的文字內容分詞,查驗分出來的詞有多少是被正文包含的,包含最多的一半就是標題。但是這里要注意,有時候找到的節點本身是正文節點的子節點,那么無論怎么分,分出來都是完全包含的,所以要剔除那些本身是正文一部分的疑似標題。這樣做對大部分網頁也是有效了,但是對僅有的標題就在正文節點里的那些頁面,目前為止我還沒有特別好的想法。
這些日子也研究了一些別人的論文,有很多思想都非常好,也有很多人想到用馬爾科夫,人工神經來訓練。也許以后我會考慮用用看吧。現在這樣也還可以,呵呵。?
?
這個算法我也寫了一下,不過是用C++寫的。
我不太懂樓上討論的分頁是什么意思,我通過分析dom樹然后用文中提到的規則進行dom結點處理以及后續的處理。
我主要是想把網頁中的內容按網頁框架分開,把正文部分合在一起,然后用貝葉斯決策計算正文特征支持率
提取網頁內容。
現在VIPS基本寫完。
但是卻也發現了些問題,
比如說有些結點的坐標提取出來會有提取不出分隔條,這是因為有少數坐標有些重疊。這里涉及到一個坐標的確定問題。
然后是結點分割規則問題,現在的頁面是大部分是通過DIV來組織頁面。而VIPS似乎更合適TABLE組織的頁面,我試過用TABLE組織的頁面,分得相當不錯。
另外,TINYA上面的翻譯似乎改了些規則,還有部分翻譯不是很準確。比如虛擬文本的定義部分與原文有些出入,不知道TINYA有沒有注意到。
最后,很感謝TINYA 對這個算法的介紹。
另外,有對這個算法感興趣的朋友希望能大家一起討論下
我的QQ:24888086
msn:trues541206@hotmail.com
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/tingya/archive/2006/02/18/601836.aspx
http://www.hackhome.com/InfoView/Article_119867.html
總結