最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python Scrapy?框架簡(jiǎn)單介紹

 更新時(shí)間:2023年05月16日 11:15:59   作者:凌冰_  
Scrapy是適用于Python的一個(gè)快速、高層次的屏幕抓取和web抓取框架,用于抓取web站點(diǎn)并從頁面中提取結(jié)構(gòu)化的數(shù)據(jù),這篇文章主要介紹了Scrapy框架優(yōu)點(diǎn)及簡(jiǎn)單介紹,需要的朋友可以參考下

一、Scrapy是什么

Scrapy 是一個(gè)基于 Twisted 的異步處理框架,是純 Python 實(shí)現(xiàn)的爬蟲框架,其架構(gòu)清晰,模塊之間的耦合程度低,可擴(kuò)展性極強(qiáng),可以靈活完成各種需求。我們只需要定制開發(fā)幾個(gè)模塊就可以輕松實(shí)現(xiàn)一個(gè)爬蟲。

Scrapy是適用于Python的一個(gè)快速、高層次的屏幕抓取和web抓取框架,用于抓取web站點(diǎn)并從頁面中提取結(jié)構(gòu)化的數(shù)據(jù)。Scrapy用途廣泛,可以用于數(shù)據(jù)挖掘、監(jiān)測(cè)和自動(dòng)化測(cè)試。

Scrapy吸引人的地方在于它是一個(gè)框架,任何人都可以根據(jù)需求方便的修改。它也提供了多種類型爬蟲的基類,如BaseSpider、sitemap爬蟲等,最新版本又提供了web2.0爬蟲的支持。

二、Scrapy優(yōu)點(diǎn)

1、速度快

2、實(shí)現(xiàn)大批量爬取

三、Scrapy爬蟲框架的架構(gòu)

(1) Scrapy有五個(gè)部分組件組成:

中 > 引擎Scrapy Engine:用來處理整個(gè)系統(tǒng)的數(shù)據(jù)流處理、觸發(fā)事務(wù),是整個(gè)框架的核心

上 > 調(diào)度器Scheduler:用來接受引擎發(fā)過來的請(qǐng)求并加入隊(duì)列中,并在引擎再次請(qǐng)求的時(shí)候提供給引擎。

左 > 管道item pipeline:負(fù)責(zé)處理由蜘蛛從網(wǎng)頁中抽取的項(xiàng)目,它的主要任務(wù)是清洗、驗(yàn)證和存儲(chǔ)數(shù)據(jù)。

下 > 爬蟲器(爬蟲組件) Spiders:其內(nèi)定義了爬取的邏輯和網(wǎng)頁的解析規(guī)則,它主要負(fù)責(zé)解析響應(yīng)并生成提取結(jié)果和新的請(qǐng)求。

Spider Middlewares(Spiders中間件):位于引擎和蜘蛛之間的鉤子框架,主要工作是處理蜘蛛輸入的響應(yīng)和輸出的結(jié)果及新的請(qǐng)求。

右 > 下載器 Downloader:用于下載網(wǎng)頁內(nèi)容,并將網(wǎng)頁內(nèi)容返回給Spiders爬蟲器。

Downloader Middlewares(下載器中間件):位于引擎和下載器之間的鉤子框架,主要是處理引擎與下載器之間的請(qǐng)求及響應(yīng)。

(2) Scrapy數(shù)據(jù)流機(jī)制:

引擎Scrapy Engine : C位,不用做事,接收任務(wù),分發(fā)任務(wù)。

爬蟲器Spiders :
1.確認(rèn)目標(biāo)url,根據(jù)這個(gè)url構(gòu)造一個(gè)request對(duì)象,交給引擎
4.接收了來自引擎的response,進(jìn)行解析,解析完畢,把結(jié)果給引擎
解析結(jié)果分為2種
--(1)如果提取出來的是url,就把所有的步驟重頭再走一遍
--(2)如果是需要進(jìn)行保存的數(shù)據(jù)data

調(diào)度器Scheduler:
2.接收了來自引擎的request對(duì)象,進(jìn)行一個(gè)排序,把排序之后的結(jié)果交給引擎(假設(shè)有100個(gè)request對(duì)象,安裝調(diào)度,安排誰先誰后).

下載器Downloader:
3.接收了來自經(jīng)過了排序之后的引擎的request對(duì)象,發(fā)送網(wǎng)絡(luò)請(qǐng)求獲取響應(yīng)對(duì)象response,交給引擎.

管道item pipeline:
5.接收了來自引擎的數(shù)據(jù)data,進(jìn)行保存.
通過多個(gè)組件的相互協(xié)作、不同組件完成工作的不同、組件很好地支持異步處理,scrapy 最大限度地利用了網(wǎng)絡(luò)帶寬,大大提高了數(shù)據(jù)爬取和處理的效率。

四、scrapy創(chuàng)建項(xiàng)目

(1) 爬蟲項(xiàng)目

scrapy startproject 爬蟲項(xiàng)目名

(2) 爬蟲任務(wù)

1. cd 到項(xiàng)目的根目錄

2. scrapy genspider 爬蟲任務(wù)名稱 域的范圍.com

(3)運(yùn)行scrapy爬蟲

scrapy crawl 爬蟲任務(wù)名稱

(4) Scrapy創(chuàng)建結(jié)構(gòu)圖

各個(gè)文件的功能描述如下:

  • scrapy.cfg:它是 Scrapy 項(xiàng)目的配置文件,其內(nèi)定義了項(xiàng)目的配置文件路徑、部署相關(guān)信息等內(nèi)容。
  • items.py:它定義 Item 數(shù)據(jù)結(jié)構(gòu),所有的 Item 的定義都可以放這里。
  • pipelines.py:它定義 Item Pipeline 的實(shí)現(xiàn),所有的 Item Pipeline 的實(shí)現(xiàn)都可以放這里。
  • settings.py:它定義項(xiàng)目的全局配置。
  • middlewares.py:它定義 Spider Middlewares 和 Downloader Middlewares 的實(shí)現(xiàn)。
  • spiders:其內(nèi)包含一個(gè)個(gè) Spider 的實(shí)現(xiàn),每個(gè) Spider 都有一個(gè)文件。

到此這篇關(guān)于Scrapy框架介紹的文章就介紹到這了,更多相關(guān)Scrapy框架內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

抚松县| 天台县| 天祝| 山东| 太仆寺旗| 南华县| 惠来县| 长沙市| 靖安县| 灯塔市| 广宗县| 惠州市| 铁力市| 湖南省| 容城县| 依安县| 洪湖市| 盐津县| 仙游县| 元阳县| 松原市| 行唐县| 封丘县| 孝感市| 浮梁县| 常宁市| 东平县| 朝阳县| 南投县| 大化| 大城县| 富蕴县| 富川| 丹江口市| 石台县| 石家庄市| 普兰店市| 新和县| 乳山市| 元朗区| 沁阳市|