基于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. 评估与回顾
相关推荐
遇事不決洛必達5 小时前
【Python基础】GIL 锁是什么及其对爬虫的影响
爬虫·python·线程·进程·gil锁
綝~5 小时前
爬虫数据采集工程师岗位面试题
爬虫·面试·请求
跨境数据猎手6 小时前
大数据在电商行业的应用
大数据·运维·爬虫
heimeiyingwang8 小时前
【架构实战】分布式事务Saga模式:长事务的优雅解决方案
分布式·架构
XWalnut8 小时前
Zookeeper入门
分布式·zookeeper
水木流年追梦9 小时前
大模型入门-大模型优化方法12-YaRN 长文本外推技术
人工智能·分布式·算法·正则表达式·prompt
Algorithm_Engineer_12 小时前
如何利用Pycharm进行分布式的Debug训练
ide·分布式·pycharm
tang7778912 小时前
异步爬虫与代理IP池结合:用aiohttp提升10倍抓取效率
爬虫·网络爬虫·爬虫代理·代理ip·代理ip池
睡不醒男孩03082313 小时前
第三篇:打破云厂商锁定:基于CLup构建私有化PolarDB分布式集群高可用方案
分布式·clup·中启乘数
前端不太难14 小时前
鸿蒙 App 分布式数据同步:架构设计 + Demo 实现
分布式·状态模式·harmonyos