學(xué)習(xí)爬蟲有一段時間了,從Python的Urllib、Urlllib2到scrapy,當(dāng)然,scrapy的性能且效率是最高的,自己之前也看過一些資料,在此學(xué)習(xí)總結(jié)下。

Scrapy介紹

關(guān)于scrapy

  scrapy是一個健壯的,可以從網(wǎng)絡(luò)上抓取數(shù)據(jù)的web框架,只需要一個配置文件就能組合各種組件和配置選項。同時,scrapy是一個基于事件的架構(gòu) 因此我們可以級聯(lián)很多操作,包括清理,組織,存儲數(shù)據(jù)到數(shù)據(jù)庫,導(dǎo)出數(shù)據(jù)等。
  假設(shè)你現(xiàn)在要抓取一個網(wǎng)站,這個網(wǎng)站的每一頁都有一百個條目,Scrapy可以毫不費勁地同時對這個網(wǎng)站發(fā)起16個請求,假如每個請求需要一秒鐘來完成,就相當(dāng)于每秒鐘爬取16個頁面,相當(dāng)于每秒鐘生成了1600個條目,假如要把這些條目同時存儲到云上,每一個條目的存儲需要3秒鐘(假設(shè)的),為了處理這16個請求,就需要運行1600 *3 = 4800個并發(fā)的寫入請求,對于一個傳統(tǒng)的多線程程序來說,就需要轉(zhuǎn)換成4800個線程,這會對系統(tǒng)造成極大的壓力。而對于Scrapy來說,只要你的硬件過關(guān), 4800個并發(fā)請求是沒有問題的。

scrapy的優(yōu)點

  Scrapy已經(jīng)發(fā)展了5年有多,已經(jīng)變得成熟和穩(wěn)定,除了上面提到的性能優(yōu)點外,Scrapy還有以下幾點優(yōu)點:
1. Scrapy可以處理不完整的HTML

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運,軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式