随笔分类 - scrapy -- 爬虫框架使用
记录scrapy的笔记
摘要:##什么是分布式爬虫 概念: 我们需要搭建一个分布式的机群,让其对一组资源进行分布联合爬取。 作用: 提升爬取数据的效率 ##如何实现分布式 安装一个scrapy-redis的组件 : pip install scrapy_redis 原生的scarapy是不可以实现分布式爬虫,必须要让scrapy
阅读全文
摘要:##CrawlSpider类是什么? 是Spider的一个子类 区别: Spider是获取到URL进行 手动发送请求 : yield scrapy.Request(url=new_url,callback=self.parse) 是通过提取器类:LinkExtractor,提前到页面所有符合条件的U
阅读全文
摘要:#中间件的位置和作用 位置 : 在引擎和下载器之间 作用 : 批量拦截到整个工程所有的请求和响应 中间件的py文件:爬虫工程中, middlewares.py就是写中间件的文件,所有的中间件都写在这个文件中 ##一、拦截请求 通过请求中间件,把请求信息拦截到,可以修改请求信息后再发送给服务端 应用场
阅读全文
摘要:#scrapy是基于五大核心组件完成数据的爬取和持久化存储的 ##引擎(Scrapy) 用来处理整个系统的数据流处理, 触发事务(框架核心) ##调度器(Scheduler) 用来接受引擎发过来的请求, 压入队列中, 并在引擎再次请求的时候返回. 可以想像成一个URL(抓取网页的网址或者说是链接)的
阅读全文
摘要:#基于图片数据的爬取,可以用框架中封装好的类,去进行图片的爬取,已经数据持久化存储 ##基于 站长素材 网站,进行数据的爬取 因为该网站会涉及到一个图片懒加载的反爬机制 ###代码示例: #1.爬虫文件.py代码示例: import scrapy from imgsPro.items import
阅读全文
摘要:#为什么要请求传参,使用的场景是什么呢? 什么是请求传参:就是在爬虫文件中,定义了多个回调函数时,却想传入同一个管道中,来进行数据存储 使用场景:当我们解析的数据不在同一个页面时,但又想把不同页面爬取到的数据传到一个管道里,就需要用到请求传参 #案例:基于BOSS直聘网,爬取不同网页的数据 ##代码
阅读全文
摘要:#基于Spider的全站数据爬取 ##什么是全站数据爬取? 就是将网站中某板块下的全部页码对应的页面数据进行爬取 ##下面我基于 校花网 进行全站数据爬取 #1.爬虫文件.py代码示例: import scrapy class XiaohuaSpider(scrapy.Spider): name =
阅读全文
摘要:#一、什么是scrapy框架? 爬虫中封装好的一个明星框架。功能:高性能的持久化存储,异步的数据下载,高性能的数据解析,分布式 #二、scrapy框架的基本使用 ##1.环境安装: mac or linux:pip3 install scrapy windows: pip install wheel
阅读全文