从网站提取正文文本,例如仅提取文章标题,而不提取网站中的所有文本

| 我正在寻找允许从网站提取文本的算法。我的意思不是\“ strip html \”,也不是数百个允许这样做的库中的任何一个。 因此,例如对于新闻文章,我想标识标题和所有文本,但不标识评论部分,依此类推。 那里有什么算法吗?谢谢!     
已邀请:
在计算机科学文献中,此问题通常称为页面分割或样板检测问题。请参阅报告使用浅文字功能进行样板检测及其相关博客文章。另外,我有一些报告和软件站点已添加书签以解决该问题。另外,请参阅此stackoverflow问题。     
您尝试做的是称为“内容提取”。事实证明,解决这个问题很难解决,而且许多幼稚的解决方案都做得很糟糕。 Instapaper和Readability都必须解决此问题,您可以通过研究它们的解决方案来学习一些知识。他们俩都提供了您可以利用的服务-也许您可以将问题外包给他们,并让他们的API负责。 :) 失败的话,搜索“ html内容提取”将返回大量有用的结果,包括有关该主题的大量论文。     
有一些开源工具可以执行类似的文章提取任务。 https://github.com/jiminoc/goose由Gravity.com开源 它具有Wiki上的信息以及您可以查看的源。有数十种单元测试,显示从各种文章中提取的文本。     
“内容提取”是一个非常困难的话题。没有通用的标准来标识“主要文章”的内容(有多种方法可以使HTML对抓取工具(例如schema.org)更容易阅读,但没有一种很流行。 事实证明,如果要获得良好的结果,最好为要抓取的每个(新闻)网站定义自己的XPath选择器。尽管有一些用于HTML内容提取的API,但是正如我所说,要开发一种适用于每个站点的算法非常困难。 您可以使用的一些API: alchemyapi.com diffbot.com boilerpipe-web.appspot.com aylien.com textracto.com     
我认为您最好的选择是研究可以从元数据中获得什么信息并编写一个好的html解析器,oEmbed可能是一个很好的标准=) https://oembed.com/#section7     

要回复问题请先登录注册