2.5 文章类网页正文提取程序演示
正文提取有很多方法,对于这个问题我也看了很多论文,最后综合了很多论文的方法,自己想出了一个方法,并且发表了一篇国际会议的论文。这个方法是基于文本密度和全概率公式的,其实道理很简单。文本密度越高的地方越有可能是正文,有效文本占总的文本比例越大的地方也越有可能是正文。从概率论的角度,很容易想到,把这两个因素做乘积,就是最后这个区域是正文的概率指标。
还是老规矩,先看程序演示。
项目地址:https://github.com/1049451037/Webpage_Text_Extraction
(抱歉,此处原来有github源码,但是感觉当时写的太丑了,打算寒假重新整理好再发出来)
把工程下载到本地,解压。
其他的先不管,先看text_extraction文件夹。
有三个文件是输入,其他两个是运行结果的输出。
main.py:运行时的主程序。
encoding.txt:编码的设置。里面有解释,第一行是网页分析的编码,第二行是输出文件的编码。一般用默认的两个就可以。
pool.txt:要提取正文的链接池。
所以这个工程的作用就是,给定一些链接,就可以自动抓取这些链接的内容,并且把提取出的正文保存到本地。
output文件夹:保存提取出的正文。
out.csv:每个网页的参数,后面会说。
让我们来试一下。
在pool.txt里面放入我这两天写的博客的文章链接,然后运行main.py。
运行完了。
在这里可以预告一下,每行的第三个参数代表这个网页是文章类的概率。超过0.5我们就认为是。所以这两个预测的还是比较正确的。
然后提取出的内容保存在了output里面,有html和txt两种格式。
个人认为提取的也是非常准确(⊙o⊙)哦。
请读者自行尝试,原理2.7节会详细讲解。