2021-01-25
閱讀量:
447
Scrapy執(zhí)行流程
第①步:爬蟲(Spider)使用URL(要爬取頁面的網址)構造一個請求(Request)對象,提交給引擎(ENGINE)。如果請求要偽裝成瀏覽器,或者設置代理IP,可以先在爬蟲中間件中設置,再發(fā)送給引擎。
第②步:引擎將請求安排給調度器,調度器根據(jù)請求的優(yōu)先級確定執(zhí)行順序。
第③步:引擎從調度器獲取即將要執(zhí)行的請求。
第④步:引擎通過下載器中間件,將請求發(fā)送給下載器下載頁面。
第⑤步:頁面完成下載后,下載器會生成一個響應(Response)對象并將其發(fā)送給引擎。下載后的數(shù)據(jù)會保存于響應對象中。
第⑥步:引擎接收來自下載器的響應對象后,通過爬蟲中間件,將其發(fā)送給爬蟲(Spider)進行處理。
第⑦步:爬蟲將抽取到的一條數(shù)據(jù)實體(Item)和新的請求(如下一頁的鏈接)發(fā)送給引擎。
第⑧步:引擎將從爬蟲獲取到的Item發(fā)送給項目管道(ITEM PIPELINES),項目管道實現(xiàn)數(shù)據(jù)持久化等功能。同時將新的請求發(fā)送給調度器,再從第②步開始重復執(zhí)行,直到調度器中沒有更多的請求,引擎關閉該網站。






評論(0)


暫無數(shù)據(jù)
推薦帖子
0條評論
0條評論
0條評論
0條評論