Python中爬虫框架或模块的区别!

Python中爬虫框架或模块的区别!,第1张

概述Python中爬虫框架模块的区别,我们在Python的学习过程中,需要不断的总结知识点,这样我们才能进步的更快一些。(1)爬虫框架或模块Python自带爬虫模块:urllib、urllib2;第三方爬虫模块:requests,aiohttp;爬虫框架:Scrapy、pyspider。(2)爬虫框架或模块的优缺点

  Python中爬虫框架或模块的区别,我们在Python的学习过程中,需要不断的总结知识点,这样我们才能进步的更快一些。

  (1)爬虫框架或模块

  Python自带爬虫模块:urllib、urllib2;

  第三方爬虫模块:requests,aiohttp;

  爬虫框架:Scrapy、pyspIDer。

  (2)爬虫框架或模块的优缺点

  urllib和urllib2模块都用于请求URL相关的 *** 作,但他们提供了不同的功能。urllib2模块中urllib2.urlopen可以接受一个Request对象或者url,(在接受Request对象时候,并以此可以来设置一个URL的headers),且只接收一个url;urllib中有urlencode,而urllib2中没有。因此,开发人员在实际开发中经常会将urllib与urllib2一起使用。

  requests是一个http库,它仅仅用于发送请求。对于http请求而言,request是一个强大的库,可以自己处理下载、解析,灵活性更高,高并发与分布式部署也非常灵活,对于功能可以更好实现。

  aiohttp是一个基于python3的asyncio携程机制实现的一个http库。相比requests,aiohttp自身就具备了异步功能。但只能在python3环境中使用。

  Scrapy是封装起来的框架,它包含了下载器、解析器、日志及异常处理,是基于多线程的,采用twisted的方式处理。对于固定单个网站的爬取开发,Scrapy具有优势;对于多网站爬取,并发及分布式处理方面,Scrapy不够灵活,不便调整与扩展。

  Scrapy具有以下优点:

  ·Scrapy是异步的;

  ·采取可读性更强的XPath代替正则表达式;

  ·强大的统计和log系统;

  ·可同时在不同的URL上爬行;

  ·支持shell方式,方便独立调试;

  ·方便写一些统一的过滤器;

  ·通过管道的方式存入数据库。

  Scrapy是基于python实现的爬虫框架,扩展性比较差。

  PyspIDer是一个重量级的爬虫框架。我们知道Scrapy没有数据库集成、分布式、断点续爬的支持、UI控制界面等等,若Scrapy想要实现这些功能,需要自行开发。PyspIDer已经集成了前面这些功能,也正因如此,PyspIDer的扩展性太差,学习难度较大。

  本文来自千锋教育,转载请注明出处。

总结

以上是内存溢出为你收集整理的Python中爬虫框架或模块的区别!全部内容,希望文章能够帮你解决Python中爬虫框架或模块的区别!所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1186904.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-03
下一篇2022-06-03

发表评论

登录后才能评论

评论列表(0条)

    保存