Newspaper 是一个很棒的 python 库,用于提取和整理文章。
它有以下的优点:
-
多线程文章下载框架
-
识别新闻网址
-
从 html 提取文本
-
从 html 提取顶部图像
-
从 html 提取所有图像
-
从文本中提取关键字
-
自动提取摘要
-
自动提取作者
-
自动提取 Google 趋势词
下面是这个开源模块的安装和使用教程。
1.准备
请选择以下任一种方式输入命令安装依赖:
-
Windows 环境 打开 Cmd (开始-运行-CMD)。
-
MacOS 环境 打开 Terminal (command+空格输入 Terminal)。
-
如果你用的是 VSCode 编辑器或 Pycharm,可以直接使用界面下方的 Terminal.
pip3 install newspaper3k
遇到任何安装问题,可以在本文下方留言,也可以访问项目官网查看相关安装指南:
https://github.com/codelucas/newspaper
2.基本使用
Newspaper 中是以文章为对象实现各种操作的,比如下载指定新闻的 HTML:
from newspaper import Article
url = 'http://fox13now.com/2013/12/30/new-year-new-laws-obamacare-pot-guns-and-drones/'
# 根据url生成Article对象
article = Article(url)
# 下载文章
article.download()
# 文章的HTML
article.html
#'<!DOCTYPE HTML><html itemscope itemtype="http://...'
通过解析新闻和文章,你能获得此文章的作者、发布时间、摘要、顶部图像、所有图像、多媒体等:
"""
Python 实用宝典
《Newspaper — 一个能下载38种语言新闻文章的 Python 模块》
"""
# 解析文章
article.parse()
# 获取文章作者
article.authors
# ['Leigh Ann Caldwell', 'John Honway']
# 获取文章发布日期
article.publish_date
# datetime.datetime(2013, 12, 30, 0, 0)
# 获取文章文本
article.text
# 'Washington (CNN) -- Not everyone subscribes to a New Year's resolution...'
# 获取顶部图像
article.top_image
# 'http://someCDN.com/blah/blah/blah/file.png'
# 获取文章多媒体资源
article.movies
# ['http://youtube.com/path/to/link.com', ...]
除此之外ÿ