首頁技術(shù)文章正文

python Scrapy框架的工作流程介紹

更新時(shí)間:2020-12-11 來源:黑馬程序員 瀏覽量:

1577370495235_學(xué)IT就到黑馬程序員.gif

Scrapy是一個為了爬取網(wǎng)站數(shù)據(jù),提取結(jié)構(gòu)性數(shù)據(jù)而編寫的應(yīng)用框架,我們只需要實(shí)現(xiàn)少量代碼,就能夠快速的抓取到數(shù)據(jù)內(nèi)容。Scrapy使用了Twisted異步網(wǎng)絡(luò)框架來處理網(wǎng)絡(luò)通訊,可以加快我們的下載速度,不用自己去實(shí)現(xiàn)異步框架,并且包含了各種中間件接口,可以靈活的完成各種需求。


Scrapy框架的工作流程

1.首先Spiders(爬蟲)將需要發(fā)送請求的url(requests)經(jīng)ScrapyEngine(引擎)交給Scheduler(調(diào)度器)。

2.Scheduler(排序,入隊(duì))處理后,經(jīng)ScrapyEngine,DownloaderMiddlewares(可選,主要有User_Agent, Proxy代理)交給Downloader。

3.Downloader向互聯(lián)網(wǎng)發(fā)送請求,并接收下載響應(yīng)(response)。將響應(yīng)(response)經(jīng)ScrapyEngine,SpiderMiddlewares(可選)交給Spiders。

4.Spiders處理response,提取數(shù)據(jù)并將數(shù)據(jù)經(jīng)ScrapyEngine交給ItemPipeline 保存(可以是本地,可以是數(shù)據(jù)庫)。提取url重新經(jīng)ScrapyEngine交給Scheduler進(jìn)行下一個循環(huán)。直到無Url請求程序停止結(jié)束。、


猜你喜歡:

python爬蟲是什么?

多線程爬蟲是什么?多線程爬蟲流程分析

爬蟲開發(fā)必學(xué)的8個技巧

Python+數(shù)據(jù)分析培訓(xùn)課程

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!