首页常见问题正文

常用的爬虫框架或者模块有哪些?简述它们的优缺点

更新时间:2023-03-10 来源:黑马程序员 浏览量:

IT培训班

  Python自带的urllib和urllib2,也可以使用requests这种第三方库,或者Scrapy框架。

  urllib和urllib2模块都可以做与请求URL相关的操作,但它们提供了不同的功能。

  urllib2.urlopen可以接收一个Request对象或者URL(在接受Request对象的时候,并以此可以来设置一个URL的headers),urllib.urlopen只接收一个URL。

  由于urllib有urlencode方法可以将字符串以URL进行编码,但是urllib2没有,urllib和urllib2经常会一起使用。urllib2可以接收一个Request类的实例来设置URL请求的headers,urlib仅可以接受URL。

  request是一个HTTP库,它可以用来对HTTP进行请求,是一个强大的库,但是下载和解析部分需要自己处理,灵活性高,高并发与分布式部署也非常灵活,对于功能可以更好实现。

  Scrapy是一个封装起来的框架,它包含了下载器、解析器、日志及异常处理,基于多线程,Scrapy基于多线程和Twisted的方式处理,对于固定单个网站的爬取开发有优势,但是对于多网站爬取,在并发及分布式处理方面,显得不够灵活。

1678416855526_领取课程.jpg

分享到:
在线咨询 我要报名
和我们在线交谈!