全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

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

发布时间:2022-07-07 17:14:00
发布人:wjy

  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万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。

相关文章

IT系统为什么需要可观测性?

IT系统为什么需要可观测性?

2023-10-14
C语言中的初始化是什么意思?

C语言中的初始化是什么意思?

2023-10-14
Arduino和单片机区别?

Arduino和单片机区别?

2023-10-14
什么是PlatformIo?

什么是PlatformIo?

2023-10-14

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取