基于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. 评估与回顾
相关推荐
小股虫13 分钟前
分布式一致性算法深度解析:Paxos、Raft与ZAB的原理、实现与应用
分布式
Tan_Ying_Y30 分钟前
分布式环境下,怎么保证线程安全
分布式
深蓝电商API1 小时前
爬虫登录态维护高级技巧:Cookie 池 + Session 复用实战
爬虫
seven_7678230981 小时前
【前瞻创想】Kurator架构演进与云原生未来
分布式·云原生·架构·kurator·全链路
@鱼香肉丝没有鱼2 小时前
大模型分布式微调 & Xtuner
分布式·大模型微调·xtuner·llamafactory
Wokoo72 小时前
C/S 架构与 B/S 架构:核心差异 + 选型指南
分布式·后端·中间件·架构
嫂子的姐夫2 小时前
01-selenium
爬虫·python·selenium·自动化
小股虫2 小时前
RabbitMQ深度解析:从入门到原理再到实战应用
分布式·rabbitmq
CRUD酱2 小时前
RabbitMQ是如何解决消息堆积问题的?
分布式·rabbitmq
写bug的小屁孩2 小时前
2.Kafka-命令行操作、两种消息模型
分布式·kafka