您的位置:新闻资讯 >文章内容
Scrapy与PySpider框架哪个好用
来源:互联网 作者:admin 时间:2018-12-19 16:02:47

  如今,互联网的数据爆炸式的增长,仅靠人工采集数据不现实,绝大部分的人都采用爬虫采集数据,虽然不同的爬虫采集效果不一样,但都可以满足不同的需求,并通过挖掘数据获得有价值的信息。


  一个爬虫的采集效果与爬虫的框架也是有很大的关系,今天精灵代理小编就常用的Scrapy与PySpider框架来介绍一下,想要知道Scrapy与PySpider框架哪个好用,可以浏览下文。


  一、Scrapy框架


  Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。


  其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以应用在获取API所返回的数据(例如 Amazon Associates Web Services ) 或者通用的网络爬虫。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试


  Scrapy 使用了 Twisted 异步网络库来处理网络通讯。整体架构大致如下



  Scrapy运行流程大概如下:


  首先,引擎从调度器中取出一个链接(URL)用于接下来的抓取,引擎把URL封装成一个请求(Request)传给下载器,下载器把资源下载下来,并封装成应答包(Response),然后,爬虫解析Response,若是解析出实体(Item),则交给实体管道进行进一步的处理。若是解析出的是链接(URL),则把URL交给Scheduler等待抓取。


  二、PySpider框架


  PySpider是binux做的一个爬虫架构的开源化实现。主要的功能需求是:抓取、更新调度多站点的特定的页面;需要对页面进行结构化信息提取;灵活可扩展,稳定可监控。

  而这也是绝大多数python爬虫的需求 —— 定向抓取,结构化化解析。但是面对结构迥异的各种网站,单一的抓取模式并不一定能满足,灵活的抓取控制是必须的。为了达到这个目的,单纯的配置文件往往不够灵活,于是,通过脚本去控制抓取是最后的选择。


  而去重调度,队列,抓取,异常处理,监控等功能作为框架,提供给抓取脚本,并保证灵活性。最后加上web的编辑调试环境,以及web任务监控,即成为了这套框架。


  pyspider的设计基础是:以python脚本驱动的抓取环模型爬虫。


  通过上文,至于Scrapy与PySpider框架哪个好用,需要看使用的场景。不同的爬虫侧重点不同,我们应该详细进行了解Scrapy与PySpider,然后再考虑它们的身边特点,选择合适的爬虫框架。


  另外,上文仅仅是介绍了两种框架,还有其他一些也非常优秀的爬虫框架,以实现各种不同的需求。


相关文章内容简介
在线咨询
微信公众号

微信公众号

回到顶部