基于scrapy框架的单机爬虫与分布式爬虫

我们知道,对于scrapy框架来说,不仅可以单机构建复杂的爬虫项目,还可以通过简单的修改,将单机版爬虫改为分布式的,大大提高爬取效率。下面我就以一个简单的爬虫案例,介绍一下如何构建一个单机版的爬虫,并做简单修改,使其实现分布式功能。

需求分析

  1. 访问页面,并实现1-10页的页面爬取,并保存到data目录下
  2. 解析页面,并获取到图片链接,并下载图片,保存到imgs目录下

单机版爬虫

准备爬虫项目

使用命令构建爬虫项目

在自己的放置爬虫的目录,或新目录内运行命令scrapy startproject scrapyMovieDemo 创建一个scrapy工程

效果如下:

使用命令构建爬虫

使用cd scrapyMovieDemo命令进入已经创建的爬虫项目目录

运行scrapy genspider mv_spider_single ssr4.scrape.center命令创建基础爬虫

效果如下:

下面我们来看一下创建爬虫工程与创建爬虫过程中,我们的工程与项目文件结构

如下:

最外层是一个名为scrapyMovieDemo的目录

  1. 创建data与imgs目录
  2. 开发单机爬虫
  3. 修改settings配置
  4. 命令启动
  5. 脚本启动
  6. 评估与回顾
相关推荐
JH307310 小时前
《Redis 经典应用场景(一):缓存、分布式锁与限流》
redis·分布式·缓存
熙客11 小时前
Elasticsearch:分布式搜索引擎数据库
分布式·elasticsearch·搜索引擎
Hello.Reader12 小时前
Spark RDD 编程从驱动程序到共享变量、Shuffle 与持久化
大数据·分布式·spark
Pocker_Spades_A14 小时前
Python快速入门专业版(五十四):爬虫基石:HTTP协议全解析(从请求到响应,附Socket模拟请求)
爬虫·python·http
小鹿学程序16 小时前
搭建hadoop集群
大数据·hadoop·分布式
web3.088899916 小时前
淘宝(全量)商品详情 API 的分布式请求调用实践
分布式
lijun_xiao200916 小时前
SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式-学习笔记-1
分布式·spring cloud·rabbitmq
二宝15217 小时前
黑马商城day8-ES01
分布式·微服务·架构
shepherd12617 小时前
破局延时任务(下):Spring Boot + DelayQueue 优雅实现分布式延时队列(实战篇)
java·spring boot·分布式
昊衡科技17 小时前
在多阶段松弛实验中使用分布式光纤传感量化局部和非局部岩石变形
分布式·分布式光纤传感·ofdr