scrapy不是乙個簡單的函式功能庫,而是乙個爬蟲框架
爬蟲框架:
engine :已有的,核心,控制所有模組之間的資料流,根據條件觸發事件
scheduler:已有的,對所有的爬蟲請求進行排程管理
item pipelines :框架出口,使用者編寫,以流水線方式處理spider產生的爬取項,由一組操作順序組成,類似流水線,每個操作是乙個item pipline型別,可能操作包括:清理,檢驗和查重爬取項中的html資料,將資料儲存到資料庫
spiders :框架入口,使用者編寫,解析**********返回的響應,產生爬取項,以及額外的爬取請求
2個middleware:download middleware:實施engine,scheduler和**********之間使用者可配置的控制,即使用者可以修改、丟棄、新增請求或響應。spider middleware,對spider的請求和爬取項的再處理。修改、丟棄、新增請求或爬取項。
相同點:兩者都可以進行頁面請求和爬取,python爬蟲的兩個重要技術路線。 兩者可用性好,文件豐富,入門簡單。
兩者都沒有處理js、提交表單、應對驗證碼等功能(可擴充套件)
不同點:
requests
scrapy
頁面級爬蟲
**級爬蟲
功能庫框架
併發性考慮不足,效能較差
併發性好,效能較高
重點在於爬蟲結構
定製靈活
一般定製靈活,深度定製困難
上手十分簡單
入門稍難
命令說明
格式startproject
建立乙個新工程
scrapy startproject [dir]
genspider
建立乙個爬蟲
scrapy genspidr [option]
settings
獲取爬蟲配置資訊
scrapy settings [options]
crawl
執行乙個爬蟲
scrapy crawl
lsit
列出工程中所有爬蟲
scrapy list
shell
啟動url除錯命令列
scrapy shell [url]
Python之網路爬蟲(1)
將 中所有的出版社資訊都爬取出來。如下 可以看到,網頁中有許多的出版社。下面我們用 將所有出版社的名字爬取出來,並儲存在檔案中。import urllib.request import re url data urllib.request.urlopen url read data data.dec...
python 網路爬蟲(1)
安裝 request庫 1,執行裡面輸入cmd直接輸入pip install requests回車,即可安裝 2,直接在終端輸入python進入python自帶的idle c users ftsdata 02 python 輸入python進入idle 匯入requests庫 r requests....
Python之scrapy框架爬蟲
scrapy命令詳解 可能是如今最全最簡單的scrapy命令解釋 明天上班,又要爬 現在每天做的工作有50 的時間爬 40 的時間清理資料,10 寫報告。若想自學資料分析,側重點很重要,我當初把大部分經歷放在了python的pandas numpymatplotlib上面,其他時間一部分放在sql身...