我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python爬虫框架NewSpaper使用详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python爬虫框架NewSpaper使用详解

写在前面

原计划继续写一篇Portia的使用博客,结果在编写代码途中发现,在windows7的DockerToolbox里面使用Portia错误实在是太多了,建议大家还是在Linux虚拟机或者直接在服务器上去运行。否则太耗费精力了~

今天我们转移一下,介绍一款newspaper

newspaper

github地址 : github.com/codelucas/n…

看名字应该能猜到和报纸/新闻有关系,这个库主要用于文章爬取和整理,国内的一个大佬做的,当然他的github上也贴上了其他开发者的推荐

例如requests库的作者在推特上的推荐语

"Newspaper is an amazing python library for extracting & curating articles."

The Changelog专门写了一篇评价文章,也可以围观一下

Newspaper delivers Instapaper style article extraction.

对于这样一款走出国门的爬虫库,我们还是很有必要介绍一下的

安装非常简单

pip install newspaper3k -i pypi.tuna.tsinghua.edu.cn/simple

官方文档可以查阅:newspaper.readthedocs.io/en/latest/u…

newspaper框架的使用

对于这款框架,使用起来难度是非常低的。简单对照这一页文档即可应用起来

例如:单条新闻内容获取

第一种应用方式,直接获取网页内容

from newspaper import Article
url = "https://36kr.com/p/857678806293124"
article = Article(url) # 创建文章对象
article.download()        # 加载网页
article.parse()           # 解析网页
print(article.html) # 打印html文档

当然还有一些其他属性,不过该框架都是基于关键字识别的,有一些BUG存在,有时识别不准

# print(article.html) # 打印html文档
print(article.text) # 新闻正文
print("-"*100)
print(article.title) # 新闻标题
print("-"*100)
print(article.authors)  # 新闻作者
print("-"*100)
print(article.summary)   # 新闻摘要
print(article.keywords) # 新闻关键词
# print(article.top_image) # 本文的top_image的URL
# print(article.images) # 本文中的所有图像url

newspaper文章缓存

默认情况下,newspaper缓存所有待提取的文章,如果文章被爬取过之后就会清除掉它。此功能用于防止重复的文章和提高提取速度。可以使用memoize_articles参数选择是否缓存。

但当我使用下面这个办法进行提取的时候,神奇的BUG出现了,怎么也得不到我想要的文章了。唉~看来框架完善之路还是要继续啊

import newspaper
url = "https://news.sina.com.cn/c/2020-08-29/doc-iivhvpwy3651884.shtml"
# article = Article(url) # 创建文章对象
# article.download()        # 加载网页
# article.parse()           # 解析网页
news = newspaper.build(url, language='zh', memoize_articles=False)
article = news.articles[0]
article.download()
article.parse()
print('title=',article.title)

其他功能

在应用的过程中发现确实解析存在很大的问题,不过整体的框架设计思路还是非常棒的。有点高开低走 ,看到github上的评语其实对newspaper是非常有期待的,使用之后,我建议还是使用requests然后加上bs4自己搞搞更加合理。

除了上面简单介绍到的功能,它还有一些扩展,例如下面这些

  • requestsnewspaper合体解析网页正文,也就是用requests爬取,newspaper充当解析器
  • 可以调用Google Trends信息
  • 支持多任务爬取
  • 支持NPL自然语言处理
  • 甚至官方文档还给了一个Easter Eggs复活节彩蛋~,可以拉倒文档最下面查阅

唉~总之一言难尽啊

写在后面

本打算 Python 玩转NewSpaper爬虫框架,看来是玩不转了,扩展一下知识点也是极好的,当然github下载源码之后,好好研究一下大佬的编码规范,能学到很多。

以上就是Python爬虫框架NewSpaper使用详解的详细内容,更多关于Python爬虫框架NewSpaper的资料请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python爬虫框架NewSpaper使用详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python之Scrapy爬虫框架安装及使用详解

题记:早已听闻python爬虫框架的大名。近些天学习了下其中的Scrapy爬虫框架,将自己理解的跟大家分享。有表述不当之处,望大神们斧正。 一、初窥Scrapy Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用
2022-06-04

Python爬虫框架-scrapy的使用

ScrapyScrapy是纯python实现的一个为了爬取网站数据、提取结构性数据而编写的应用框架。Scrapy使用了Twisted异步网络框架来处理网络通讯,可以加快我们的下载速度,并且包含了各种中间件接口,可以灵活的完成各种需求1、安装
2022-06-02

Python爬虫框架scrapy的使用示例

这篇文章主要介绍了Python爬虫框架scrapy的使用示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python可以做什么Python是一种编程语言,内置了许多有效的工
2023-06-14

怎么使用Python的Scrapy爬虫框架

本篇内容介绍了“怎么使用Python的Scrapy爬虫框架”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Scrapy是Python开发的一个
2023-06-02

使用Python实现简单的爬虫框架

爬虫是一种自动获取网页内容的程序,它可以帮助我们从网络上快速收集大量信息。下面我们将学习如何使用Python编写一个简单的爬虫框架,感兴趣的可以了解一下
2023-05-19

怎么在python中使用feapde爬虫框架

怎么在python中使用feapde爬虫框架?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象
2023-06-14

scrapy爬虫框架怎么使用

这篇“scrapy爬虫框架怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“scrapy爬虫框架怎么使用”文章吧。一、s
2023-06-27

常用python爬虫框架有哪些

常用的Python爬虫框架有以下几个:BeautifulSoup:一个HTML和XML解析库,可以方便地从网页中提取数据。Scrapy:一个功能强大的爬虫框架,可以用于抓取数据、处理数据和存储数据。Selenium:一个用于自动化浏览器操作
2023-10-21

Python爬虫基础讲解之scrapy框架

网络爬虫 网络爬虫是指在互联网上自动爬取网站内容信息的程序,也被称作网络蜘蛛或网络机器人。大型的爬虫程序被广泛应用于搜索引擎、数据挖掘等领域,个人用户或企业也可以利用爬虫收集对自身有价值的数据。 一个网络爬虫程序的基本执行流程可以总结三个过
2022-06-02

Golang爬虫框架colly使用浅析

这篇文章主要介绍了Golang爬虫框架colly的使用,colly是Go实现的比较有名的一款爬虫框架,而且Go在高并发和分布式场景的优势也正是爬虫技术所需要的,感兴趣想要详细了解可以参考下文
2023-05-20

Python的爬虫框架scrapy用21行代码写一个爬虫

开发说明 开发环境:Pycharm 2017.1(目前最新)开发框架:Scrapy 1.3.3(目前最新) 目标爬取线报网站,并把内容保存到items.json里 页面分析根据上图我们可以发现内容都在类为post这个div里下面放出post
2022-06-04

常用的Python爬虫框架有哪些

常用的Python爬虫框架有以下几个:1. Scrapy:Scrapy是一个高级的Python爬虫框架,提供了强大的爬虫功能和可扩展性,适用于大规模的数据抓取。2. BeautifulSoup:BeautifulSoup是一个用于解析HTM
2023-08-11

爬虫框架feapder的安装和使用

这篇文章主要讲解了“爬虫框架feapder的安装和使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“爬虫框架feapder的安装和使用”吧! 1. 前言众所周知,Python 最流行的爬虫框
2023-06-15

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录