Scrapy五大核心组件简介
生活随笔
收集整理的這篇文章主要介紹了
Scrapy五大核心组件简介
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
五大核心組件
scrapy框架主要由五大組件組成,他們分別是調度器(Scheduler),下載器(Downloader),爬蟲(Spider),和實體管道(Item Pipeline),Scrapy引擎(Scrapy Fngine)
下面我們說說他們各自的作用:
調度器
用來接受引擎發過來的請求,由過濾器重復的url并將其壓入隊列中,在引擎再次請求的時候返回,可以想象成一個URL(抓取網頁的網址或者說是鏈接)的優先隊列,由他決定下一個要抓取的網址是什么,用戶可以根據自己的需求定制調度器
下載器
下載器,是所有組件中負擔最大的,它用于高速地下載網絡上的資源,Scrapy的下載器代碼不會太復雜,但效率高(原因:Scrapy下載器是建立在twisted這個高效的異步模型上的)爬蟲
爬蟲是主要干活的,用戶最關心的部分, 它可以生成url, 并從特定的url中提取自己需要的信息, 即所謂的實體(Item). 用戶也可以從中提取出鏈接, 讓Scrapy繼續抓取下一個頁面.實體管道
負責處理爬蟲從網頁中抽取的實體, 主要的功能是持久化實體、驗證實體的有效性、清除不需要的信息. 當頁面被爬蟲解析后, 將被發送到項目管道, 并經過幾個特定的次序處理數據.引擎
Scrapy引擎是整個框架的核心。它用來控制調試器、下載器、爬蟲。實際上,引擎相當于計算機的CPU,它控制著整個流程。對整個系統的數據流進行處理, 觸發事務(框架核心).工作流程
步驟詳解:
1.spider中的url被封裝成請求對象交給引擎(每一個對應一個請求對象)
2.引擎拿到請求對象之后,將全部交給調度器
3.調度器鬧到所有請求對象后,通過內部的過濾器過濾掉重復的url,最后將去重后的所有url對應的請求對象壓入到隊列中,隨后調度器調度出其中一個請求對象,并將其交給引擎
4.引擎將調度器調度出的請求對象交給下載器
5.下載器拿到該請求對象去互聯網中下載數據
6.數據下載成功后會被封裝到response中,隨后response會被交給下載器
7.下載器將response交給引擎
8.引擎將response交給spiders
9.spiders拿到response后調用回調方法進行數據解析,解析成功后生成item,隨后spiders將item交給引擎
10引擎將item交給管道,管道拿到item后進行數據的持久化存儲
轉載于:https://www.cnblogs.com/tianshuai1/p/10871961.html
總結
以上是生活随笔為你收集整理的Scrapy五大核心组件简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 修改IIS默认的30M
- 下一篇: 微信消息类型和事件类型