网页新闻抓取(如何精确提取网页中的新闻内容是新闻资讯平台的基础)
优采云 发布时间: 2021-09-13 02:04网页新闻抓取(如何精确提取网页中的新闻内容是新闻资讯平台的基础)
准确地从网页中提取新闻内容是新闻信息平台的基础。目前新闻资讯平台的大部分内容都来自对其他新闻网站内容的抓取、整理和分类,那么如何从网页中准确提取新闻就显得很重要了~
方法一:“基于行块分布函数的通用网页正文提取”
这个想法是在一个主题网页(这里是新闻)的详情页上只有一个数据区,所以你只需要提取这个数据区;找到这个数据区的方法就是把网页的内容分成块,一个块是指从某行的开头到某行的结尾的区域。例如第n块由第n行、n+1行和n+2行组成,第n+1块由第n+1行和n+2行和n+3行组成,然后提取每个块中的纯文本,正文中必须收录最纯文本的块;如果你找到某个块,你可以用这部分内容来找到文本的边界 文章中指出,主题网页的主体中有很多纯文本,而其他部分则较少您可以从位于前面的块的位置开始向后看。找到的纯文本数量急剧下降,这是边界。 最后使用边界信息提取文本。这种方法可以准确提取大部分新闻的正文,但在正文的末尾含有一些杂质信息。而且这种方法真的只能提取正文,很难提取与正文相关的非常重要的信息,即标题、来源、时间、新闻标题和正文之间的图片。 .
方法二:可读性算法
它的主要思想是通过给定的网页构造一棵DOM树,对body节点子树中的每个后代节点进行打分,得到得分满足要求的节点。这些节点收录了读者想要阅读的内容,然后将这些节点组织成一个网页并返回。使用该算法的Java实现来处理上述示例消息,结果与之前的方法类似。但是,通过DOM树,您可以通过另一种方式轻松获取新闻的时间和来源。标题和正文之间的内容可以通过正则表达式匹配新闻时间;可以通过标题和正文之间的内容中的“source”关键字找到出处,找到的出处可以存储使用,当这部分内容没有“出处”关键字时匹配出处;最终解决问题。如果只是不能为任何新闻网页提取新闻的来源和时间,那么它已经可以满足准确提取新闻内容的要求,但它还有其他问题,例如大多数情况下会丢失新闻标题图片和文本之间的其他信息和正文,有时正文后面还有其他不需要的信息(二维码图片、版权信息等)。同样,核心问题是信息的丢失。
方法三:RoadRunner算法
该算法尝试从同一模板生成的一组网页中找到一个模板,然后使用该模板解析根据该模板生成的其他网页。 (目前不太好操作)