美文网首页
爬虫笔记三

爬虫笔记三

作者: wonkey | 来源:发表于2018-07-12 15:39 被阅读0次

    scrapy是一个非常好用的爬虫框架,它的中间件设计使得框架非常灵活,以twisted框架为基础,为我们提供了异步爬取,过滤,去重,异常处理,日志打印等功能。

    scrapy由以下几个部分组成:

    引擎:用来处理整个系统的数据流

    调度器(scheduler):维护处理由待爬页面url构成的队列。接收引擎发送的请求,传入队列,决定下一个爬取的网址是什么,同时对网址去重。

    下载器:下载网页内容

    爬虫(spiders):用于解析网页,从中提取自己需要的信息。

    项目管道(pipeline):处理爬虫从网页中提取的信息,对信息持久化。

    下载器中间件(downloader middlewares):处理引擎和下载器之间的请求和响应,可以在这里做定制化扩展,代理就可以在这里设置。

    常用的scrapy 命令:

    scrapy shell url: 进入scrapy命令行,在这里调试

    scrapy start project: 新建一个project项目,生成基础代码

    scrapy list:该目录下有哪些spider

    scrapy crawl spider: 相应的spider爬虫开始爬取

    scrapy非常灵活,配置在settings.py里面,可以设置下载中间件,user-agent,并发数量,延迟时间等。

    原生scrapy不支持分布式爬取,scrapy-redis改写了scrapy项目中的相应组件,从而利用redis数据库实现了分布式爬虫。

    redis是一个内存数据库,获取数据效率很高。

    用redis存放队列,取代了scrapy中原生的deque。换了队列,相应的也实现了自己的调度器。

    相关文章

      网友评论

          本文标题:爬虫笔记三

          本文链接:https://www.haomeiwen.com/subject/jylrpftx.html