今天的30天挑战,我决定学习怎样用Python实现文章提取,几个月前当我想写Prismatic克隆的时候就对文章提取有兴趣了。Prismatic会根据用户的兴趣创建新闻feed. 提取出文章的主要内容,图片和其他元信息在大部分像Prismatic这样的内容挖掘网站是一个很基本的需求。这篇博客里,我们来学习用goose-extractor 的Python包来完成这个任务,先学习些基础知识,再用Goose Extractor API开发个简单的Flask程序.
Goose Extractor是什么?
Goose Extractor是一个开源的文章提取库,用Python编写,可以用来提取文章的主要文字,图片,视频,数据描述和数据标签。Goose最开始由Gravity.com用Java编写,最近转换成了scala项目。
摘自Goose Extractor网站
Goose Extractor完全由python重写,软件旨在给出文章或者文章类型的网页的任何新闻,不仅仅是文章的主要内容,还包括所有的元数据和最可能的重要图片。
我为什么关注Goose Extractor?
我决定学习Goose Extractor的几点原因:
- 我想开发的程序需要用到文章提取。Goose Extractor基于强悍的NTLK和Beautiful Soup, 他们是文字处理和HTML分析中成熟前沿的库。
- 我想学习怎样用Python完成文章提取。
安装Goose Extractor
在开始用Goose Extractor前,我们需要先装Python和virtualenv, 我这里用的Python版本是2.7.
我们用pip install来开始Goose Extractor。给不熟悉pip的开发者提一下,它是Python包管理器,我们可以从官网下载pip, 在你机器上选个目录,运行一下命令。
$ mkdir myapp $ cd myapp $ virtualenv venv --python=python2.7 $ . venv/bin/activate $ pip install goose-extractor