1. 程式人生 > >對scrapy經典框架爬蟲原理的理解

對scrapy經典框架爬蟲原理的理解

https://www.cnblogs.com/themost/p/7131234.html

 

1,spider開啟某網頁,獲取到一個或者多個request,經由scrapy engine傳送給排程器scheduler
request特別多並且速度特別快會在scheduler形成請求佇列queue,由scheduler安排執行
2,schelduler會按照一定的次序取出請求,經由引擎, 下載器中間鍵,傳送給下載器dowmloader
這裡的下載器中間鍵是設定在請求執行前,因此可以設定代理,請求頭,cookie等
3,下載下來的網頁資料再次經過下載器中間鍵,經過引擎,經過爬蟲中間鍵傳送給爬蟲spiders
這裡的下載器中間鍵是設定在請求執行後,因此可以修改請求的結果
這裡的爬蟲中間鍵是設定在資料或者請求到達爬蟲之前,與下載器中間鍵有類似的功能
4,由爬蟲spider對下載下來的資料進行解析,按照item設定的資料結構經由爬蟲中間鍵,引擎傳送給專案管道itempipeline
這裡的專案管道itempipeline可以對資料進行進一步的清洗,儲存等操作
這裡爬蟲極有可能從資料中解析到進一步的請求request,它會把請求經由引擎重新發送給排程器shelduler,排程器迴圈執行上述操作
5,專案管道itempipeline管理著最後的輸出