先前發文
DAY 01 : 參賽目的與規劃
DAY 02 : python3 virtualenv 建置
DAY 03 : python3 request
DAY 04 : 使用beautifulsoup4 和lxml
DAY 05 : select 和find 抓取tag
DAY 06 : soup解析後 list取值
DAY 07 : request_header_cookie 通過網頁18限制
DAY 08 : ppt內文爬取
DAY 09 : 資料處理 split replace strip
DAY 10 : python csv 寫入 和dict 合併
DAY 11 : python class function
DAY 12 : crawl 框架 scrapy 使用
DAY 13 : scrapy 架構
開始前先看看原廠的架構圖吧!
架構圖非常清楚
一切的流程都是圍繞engine來控制的
當engine收到來自spider的爬蟲請求後
向schduler排入一個請求並要求下一個爬取請求
schduler 回傳下一個請求給engine
engine發送請求給 downloader, 通過downloader middlewares
待頁面response回來 , 送到engine
再到spider進行有效的資料爬取 , 並由engine轉給item pipline
本人目前了解 , spider、middleware、item、pipline都是可以用來操作資料的檔案
spider就是爬取的主程式
middleware 可以用來更換ip 或是drop cookie和set cookie的功用
pipline 用來處理資料與決定資料儲存
setting 可以用來設定 user-agant 、 cookie 、 loglevel, 多個pipline , middleware 的執行順序(數字越小越早)
今日歌曲~
Hello Nico - 花