1.结构简图:
主要组成部分:
- Spider(产出request,处理response),
- Pipeline
- Downloader
- Scheduler
- Scrapy Engine
2.主要步骤(循环执行):
-
1.Spiders(自己书写的爬虫逻辑,处理url及网页等【spider genspider -t 指定模板 爬虫文件名 域名】),返回Requests给engine——>
-
2.engine拿到request传给scheduler(其它什么也没做)——>
-
3.然后scheduler会生成一个requests交给engine(url调度器)——>
-
4.engine通过downloader的middleware一层一层过滤然后将requests交给downloader——>
-
5.downloader下载完成后又通过middleware过滤将response返回给engine——>
-
6.engine拿到response之后将response通过spiders的middleware过滤后返回给spider,然后spider做一些处理(如返回items或requests)——>
-
7.spiders将处理后得到的一些items和requests通过中间件过滤返回给engine——>
-
8.engine判断返回的是items或requests,如果是items就直接返回给item pipelines,如果是requests就将requests返回给scheduler(和第二步一样)