我正在尋找允許從網站提取文本的算法。我不是說「strip html」,也不是說允許這個的數百個庫中的任何一個。從網站提取正文文本例如僅提取文章標題和文本不是網站中的所有文本
因此,例如對於新聞文章,我想識別標題和所有文本,但不是評論部分等。
那裏有什麼算法嗎?謝謝!
我正在尋找允許從網站提取文本的算法。我不是說「strip html」,也不是說允許這個的數百個庫中的任何一個。從網站提取正文文本例如僅提取文章標題和文本不是網站中的所有文本
因此,例如對於新聞文章,我想識別標題和所有文本,但不是評論部分等。
那裏有什麼算法嗎?謝謝!
在計算機科學文獻中這個問題通常被稱爲頁面分割或肉雞盤檢測問題。請參閱報告Boilerplate Detection using Shallow Text Features及其相關blog的帖子。另外,我有幾個報告和軟件網站bookmarked解決這個問題。另請參閱this stackoverflow問題。
謝謝!這正是我所需要的:) – Scoox 2011-04-23 07:16:39
Thanx ...非常有幫助! – faisal00813 2014-12-03 12:55:47
你要做的就是所謂的「內容提取」。事實證明,解決問題是一個令人驚訝的難題,許多天真的解決方案做得相當糟糕。
Instapaper和Readability都必須解決這個問題,你可以從他們的解決方案中學到一些東西。他們還提供您可以利用的服務 - 也許您可以將問題外包給他們,並讓他們的API處理它。 :)
如果沒有這樣做,搜索「html content extraction」會返回大量有用的結果,其中包括許多關於此主題的論文。
有幾個開源工具可用於執行類似的文章提取任務。 https://github.com/jiminoc/goose這是Gravity.com的開源代碼
它具有關於wiki的信息以及您可以查看的源代碼。有幾十個單元測試可以顯示從各種文章中提取的文本。
「內容提取」是一個非常困難的話題。沒有通用的標準來標識「主要文章」的內容(有幾種方法可以使HTML更容易讀取,例如schema.org,但這些方法都不常用)。
事實證明,如果你想要好的結果,那麼最好爲每個你想要搜索的(新聞)網站定義自己的XPath選擇器。雖然有一些API用於提取HTML內容,但正如我所說的,很難開發出適用於每個站點的算法。
某些API,你可以使用:
alchemyapi.com
diffbot.com
boilerpipe-web.appspot.com
aylien.com
textracto.com
我認爲你正在尋找的短語是 「網絡刮」 – StriplingWarrior 2011-04-21 15:33:29