技术文章 > Python技术 > Python基础 > 正文

python中的scrapy框架是什么?为什么要学?

小妮浅浅

在开始正式进入今天学习scrapy之前,我们先来简单讲讲框架是做什么用的,相信这样也会更好的理解scrapy框架。我们在写程序代码的时候,如果有一个模板可以执行类似所有的代码,那么会节省很多不必要的操作。接下来小编就讲讲python爬虫中scrapy框架是什么?我们又为什么要选择scrapy呢?


scrapy的介绍

比较流行的爬虫的框架有scrapy和pyspider,但是被大家所钟爱的我想非scrapy莫属了。scrapy是一个开源的高级爬虫框架,我们可以称它为"scrapy语言"。它使用python编写,用于爬取网页,提取结构性数据,并可将抓取得结构性数据较好的应用于数据分析和数据挖掘。scrapy有以下的一些特点:

  • scrapy基于事件的机制,利用twisted的设计实现了非阻塞的异步操作。这相比于传统的阻塞式请求,极大的提高了CPU的使用率,以及爬取效率。

  • 配置简单,可以简单的通过设置一行代码实现复杂功能。

  • 可拓展,插件丰富,比如分布式scrapy + redis、爬虫可视化等插件。

  • 解析方便易用,scrapy封装了xpath等解析器,提供了更方便更高级的selector构造器,可有效的处理破损的HTML代码和编码。

 

如果你对爬虫的基础知识有了一定了解的话,那么是时候该了解一下爬虫框架了。那么为什么要使用爬虫框架?

  • 学习编程思想:学习框架的根本是学习一种编程思想,而不应该仅仅局限于是如何使用它。从了解到掌握一种框架,其实是对一种思想理解的过程。

  • 开发方便:框架也给我们的开发带来了极大的方便。许多条条框框都已经是写好了的,并不需要我们重复造轮子,我们只需要根据自己的需求定制自己要实现的功能就好了,大大减少了工作量。

  • 提升编程能力:参考并学习优秀的框架代码,提升编程代码能力。


scrapy和requests+bs用哪个好?

有的朋友问了,为什么要使用scrapy,不使用不行吗?用resquests + beautifulsoup组合难道不能完成吗?

不用纠结,根据自己方便来。resquests + beautifulsoup当然可以了,requests + 任何解析器都行,都是非常好的组合。这样用的优点是我们可以灵活的写我们自己的代码,不必拘泥于固定模式。对于使用固定的框架有时候不一定用起来方便,比如scrapy对于反反爬的处理并没有很完善,好多时候也要自己来解决。

但是对于一些中小型的爬虫任务来讲,Scrapy确实是非常好的选择,它避免了我们来写一些重复的代码,并且有着出色的性能。我们自己写代码的时候,比如为了提高爬取效率,每次都自己码多线程或异步等代码,大大浪费了开发时间。这时候使用已经写好的框架是再好不过的选择了,我们只要简单的写写解析规则和pipeline等就好了。

看完后小伙伴们会发现,scrapy框架在使用的功能上确实有不少出色的地方,当然小伙伴们也可以根据自身情况灵活选择~更多Python学习推荐:PyThon学习网教学中心


免费视频教程
本文原创发布python学习网,转载请注明出处,感谢您的尊重!
相关文章
 python3中如何安装scrapy
 python的爬虫框架scrapy原理是什么?
 怎么用python的爬虫框架scrapy的命令行?
 python scrapy框架是异步还是多线程?
 python爬虫中选scrapy框架的优势有哪些?
相关视频章节
 Scrapy爬虫框架介绍
 Scrapy爬虫的第一个实例
 Scrapy爬虫的基本使用
 股票数据Scrapy爬虫实例编写
 股票数据Scrapy爬虫实例介绍
 股票数据定向Scrapy爬虫实例优化
推荐视频
视频教程分类