0. 从安装开始

76 阅读2分钟

安装

首先需要安装python,在系统中已经有python的情况下,运行 pip install scrapy 进行安装

安装指定版本(非必要)

pip install scrapy==2.5.1 即在 ==后面加版本号即可

指定openssl的版本(非必要)

通过pip uninstall cryptograbhypip install cryptograbhy==36.0.2这个版本对应的openssl为1.1.1n


验证

安装完成之后运行 python -m scrapy version --verbose 进行验证,如果已经正常安装,会显示版本号,例如:

C:\Users\user01>python -m scrapy version --verbose
Scrapy       : 2.13.3
lxml         : 6.0.0
libxml2      : 2.11.9
cssselect    : 1.3.0
parsel       : 1.10.0
w3lib        : 2.3.1
Twisted      : 25.5.0
Python       : 3.13.5 (tags/v3.13.5:6cb20a2, Jun 11 2025, 16:15:46) [MSC v.1943 64 bit (AMD64)]
pyOpenSSL    : 25.1.0 (OpenSSL 3.5.1 1 Jul 2025)
cryptography : 45.0.5
Platform     : Windows-11-10.0.26100-SP0

如果输出没问题,那就已经安装完毕了


scrapy的组件介绍

  1. 引擎(engine)
    scrapy的核心,所有模块的衔接,数据流程梳理
  2. 调度器(scheduler)
    可以看成是一个集合和队列,里面存放着即将要发送的请求,决定了下一步要去爬取哪一个url.通常在这里可以对url进行去重操作
  3. 下载器(downloader)
    本质就是用来发送请求的一个模块,返回一个response对象
  4. 爬虫(spider)
    这是要写的第一个部分的内容,负责解析下载器返回的response对象.从中提取需要的数据
  5. 管道(pipeline)
    这是要写的第二个部分的内容,负责数据的存储和各种持久化操作,

scrapy的工作流程

新建 BMP 图像.png 流程图中编号的含义

  1. 引擎调用spider
  2. spider中对urls进行处理,返回request请求对象
  3. 引擎调用调度器
  4. 调度器中的过滤器与请求队列进行处理,然后返回结果
  5. 引擎调用下载器
  6. 下载器对request请求对象进行解析,并进行请求,返回请求结果response对象
  7. 引擎调用spider中的parse方法
  8. parse方法对请求结果进行处理,提取数据
  9. 引擎将数据发送给管道,由管道进行进一步的处理