千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > Python中爬虫框架或模块的区别是什么

Python中爬虫框架或模块的区别是什么

来源:千锋教育
发布人:wjy
时间: 2022-07-07 17:14:00 1657185240

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

  (1)爬虫框架或模块

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

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

  爬虫框架:Scrapy、pyspider。

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

 (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 是一个封装框架,包括下载器、解析器、日志和异常处理。它基于多线程,并以扭曲的方式处理。对于固定单一网站的爬取开发,Scrapy有优势;对于多站点爬取、并发和分布式处理,Scrapy不够灵活,无法调整和扩展。

  Scrapy 具有以下优点:

  ·Scrapy 是异步的;

  ·使用更易读的XPath代替正则表达式;

  ·强大的统计和日志系统;

  ·可以同时爬取不同的网址;

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

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

  · 通过管道存储在数据库中。

  Scrapy 是一个基于 python 的爬虫框架,扩展性较差。

  Pyspider 是一个重量级的蜘蛛框架。我们知道Scrapy没有数据库集成、分发、支持断点连续爬升、UI控制界面等,如果Scrapy要实现这些功能,还需要自己开发。 Pyspider集成了以上功能,正因为如此,Pyspider的可扩展性太差,学习难度大。更多关于“Python培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT