Python Newspaper 模块

2025年3月17日 | 阅读 8 分钟

我们中的大多数人通常对阅读完整的报纸甚至完整的文章都不感兴趣。在这种情况下,我们只想了解文章的关键词、标题或许多此类较小的内容,这样我们就不必花费那么多时间阅读一篇完整的文章。当我们只想阅读选定的文章,但不知道如何为我们选择有用的文章时,这也变得很有用。我们都必须知道什么是网络抓取以及它是如何工作的。我们也知道网络抓取有多么重要,以及它如何帮助我们从源网站提取所有有用的信息。我们还可以在报纸网站上执行此操作,我们可以从那里获取文章链接并抓取和整理该文章中的有用信息。我们可以通过使用 Python 程序来完成所有这些操作,为此,Python 为我们提供了一个非常有用的模块,即 Newspaper 模块。在本教程中,我们将学习 Python 的 Newspaper 模块,并学习如何使用此模块通过 Python 程序执行报纸抓取和整理。

Python 中的 Newspaper 模块

Newspaper 是一个 Python 模块,它主要用于整理报纸文章中的有用信息。因此,我们可以使用 Python 的 Newspaper 模块,通过在 Python 程序中提供文章的网络链接来执行文章的抓取和整理。我们可以使用 Newspaper 模块的函数从文章中检索所有有用的信息,例如标题、关键词等。Python 的 Newspaper 模块使用高级算法和网络抓取功能,以便可以从报纸网站中提取所有有用的文本。Newspaper 模块在我们日常生活中通常使用的在线报纸网站上运行得非常出色。

注意:我们应该注意,Newspaper 模块在在线报纸网站上执行网络抓取过程。这就是为什么,如果我们同时从一个网站发出多个请求,可能会导致该网站的阻止。因此,我们必须在实际需要使用此模块时相应地使用它。

Newspaper 模块:安装

Newspaper 模块不是 Python 中的内置模块,因此,我们必须首先在我们的系统中安装此模块,之后才能从文章的网络链接中整理出有用的信息。我们可以从多个来源并使用多种方法安装此 Newspaper 模块,但我们建议的方法是使用 pip 安装程序。通过 pip 安装程序,我们可以使用以下命令在命令提示符终端中非常轻松地安装 Newspaper 模块

一旦我们在设备的终端 shell 中输入上述命令,我们应该按 Enter 键开始安装过程,然后我们必须等待一段时间以完成安装过程。一旦 Newspaper 模块的安装过程完成,它将在终端 shell 中显示以下成功安装消息窗口

Python Newspaper Module
Python Newspaper Module

我们可以看到,Python 的 Newspaper 模块已成功安装在我们的系统中,现在,我们可以通过将其导入 Python 程序来使用 Newspaper 模块中的函数来执行报纸抓取。

Newspaper 模块:支持的语言

Python 的 Newspaper 模块支持多种语言,这也是它更受欢迎的原因,因为人们可以从自己选择的语言中抓取新闻文章。Newspaper 模块支持以下语言,并附有其输入代码:

序号。语言语言的输入代码
1阿拉伯语ar
2中文zh
3希腊语el
4丹麦语da
5意大利语it
6德语de
7... 还有更多....

在程序中为文章的网络链接创建实例时,我们必须提供语言的输入代码。我们在程序中提供的语言代码将帮助 newspaper 模块执行并使用其针对特定语言的特定算法集来抓取和整理文章。

Newspaper 模块:实现

我们已经在系统中安装了 newspaper 模块,现在我们都想执行它的实现,以便我们能够理解这个模块是如何工作的。newspaper 模块的实现还将帮助我们学习如何从文章中整理出多个关键词和有用信息。但是,在我们将在 Python 程序中使用这个 newspaper 模块之前,我们应该注意,我们必须首先为文章链接创建一个实例。我们为文章创建的实例将使用 newspaper 模块的函数从文章中获取所有信息。因此,首先,我们应该了解文章实例的语法以及其中使用的参数。

创建实例的语法

在程序中必须使用以下语法来为文章创建实例

正如我们在上面写的语法中可以看到的,我们使用了以下两个参数

  1. urlOfArticle:在这里,我们必须提供文章的网络链接,我们将从该链接中整理出文章的有用信息。
  2. Language:我们必须提供文章所用语言的输入代码。

我们现在已经学习了创建文章实例的语法,现在我们可以继续进行 newspaper 模块的实现部分。我们将使用以下示例程序来理解此 Newspaper 模块的实现。

NLTK 模块:nltk 模块在执行报纸抓取时也非常重要,我们必须将此模块与 newspaper 模块一起使用才能成功地对文章执行报纸抓取。nltk 模块用于对文章链接执行 NLP,如果不执行 NLP,我们就无法从文章中整理出有用的信息。因此,在使用示例中的 newspaper 模块时,我们还必须与它一起使用 nltk 模块,并使用程序中的 download('punkt') 函数下载 nltk 数据。我们还应该确保 ntlk 模块已安装在我们的系统中,如果它未安装在我们的系统中,我们可以使用以下命令安装它


Python Newspaper Module

完成 ntlk 模块的安装过程后,我们可以继续进行 Newspaper 模块的实现部分,并将其作为示例程序用于执行报纸抓取。

示例 1:查看以下 Python 程序,我们在其中使用了 TOI 的一篇文章来使用 Newspaper 模块执行报纸抓取

输出

Python Newspaper Module

我们已成功从代码中给出的文章片段链接中执行抓取!

说明

我们首先从 newspaper 模块和 nltk 模块中导入了 article 到程序中,以便我们可以使用这两个模块的函数来执行报纸抓取。之后,我们将文章链接(TOI 的最新文章)放入 URL 变量中。然后,我们使用 article() 函数初始化了文章的实例,并将初始化的 URL 作为参数传入。此外,我们还在 article() 函数中与 URL 变量一起提供了语言输入代码。之后,我们使用 download() 函数在程序中下载文章,然后使用 parse() 函数解析文章。之后,我们借助 nlp() 函数对解析后的文章片段执行了自然语言处理 (NLP)。现在,在对解析后的文章执行 NLP 后,我们能够打印出文章中的有用信息。因此,首先,我们使用“.title”函数打印文章的标题,然后,我们使用“.text”函数打印文章中的文本。接下来,我们使用“.summary”函数打印文章的摘要,之后,我们使用“.keywords”函数打印文章的重要关键词。

注意:我们应该注意,TOI 会不时删除他们的一些文章,因此,示例中给出的此 TOI 文章链接将来可能无法使用。因此,在使用此示例时,我们必须使用另一篇文章的新链接。

Newspaper 模块:一些有用的函数

当我们使用 newspaper 模块从文章链接中执行抓取时,我们使用了一些重要的函数来成功完成该任务。这些函数对于执行报纸抓取和整理以及在输出中打印重要信息非常有用。在这里,本节中,我们将学习 Newspaper 模块的一些重要函数,如下所示

序号函数名函数作用
1article()首先,我们必须创建一个文章实例,以从示例中给出的文章链接中整理出任何有用的信息,我们可以使用 article() 函数来创建它。
2download()借助 download() 函数,我们可以下载我们在程序中提供的 URL 的文章。
3parse()下载文章后,我们必须解析文章,我们可以使用 parse() 函数来完成此操作。
4nlp()在从文章中整理出任何有用信息之前,我们还必须对解析后的文章执行 NLP,我们可以使用 nlp() 函数来完成此操作。
5instanceName.title它用于打印文章的标题。
6instanceName.text如果我们要打印文章的文本,可以使用此函数。
7instanceName.keywords此函数非常有用,因为它会打印文章中所有重要的关键词。
8instanceName.summary如果我们要打印文章的摘要,可以使用此函数。

这些是 Newspaper 模块的所有重要函数,我们可以根据我们想从文章中获取哪种类型的信息(如关键词、标题等)来使用它们。

结论

我们不可能阅读所有报纸,因此,我们只想要文章中的有用信息。Newspaper 模块为我们提供了一个选项,通过对文章执行报纸抓取,我们可以只获取文章的有用信息。我们可以使用 Newspaper 模块的函数在 Python 程序中执行报纸抓取,并在输出中打印文章链接中的所有有用信息。