scrapy框架
scrapy框架
CrawlSpider 类 Spider的一个子类 - 全站数据爬取的方式 - 基于Spider:手动请求 - 基于CrawlSpider - CrawlSpider的使用 - 创建一个工程 scrapy startproject xxx - cd xxx - 创建爬虫文件(CrawlSpider): - scrapy genspider -t crawl xxx www.xxx.com - 连接提取器 - 作用: 根据指定的规则(allow) 进行指定的链接提取 - 规则解释器: - 作用: 将链接提取器取到的链接进行指定规则的解析(callback)的解析 需求:爬取sun网站中的编号,新闻标题,新闻内容,标号 - 分析爬取的页面没有在同一张页面中 - 1.可以使用链接提取器提取所有的页码链接 - 2.让链接提取器提取所有的新闻详情页的链接
- 分布式爬虫:
- 安装一个scrapy-redis组件
- 原生的scrapy是不可以实现分布式爬虫,必须要让scrapy结合scrapy-redis组件一起实现分布式爬虫
- 为什么原生的scrapy不可以实现分布式?
- 调度器不可以被分布式集群共享
- 管道不可以被分布式集群共享
- scrapy-redis组件单的作用
- 可以给原生的scrapy框架提供可以被共享的管道和调度器
- 实现流程:
|