scrapy中pipeline的一點綜合知識


初次學習scrapy ,覺得spider代碼才是最重要的,越往后學,發現pipeline中的代碼也很有趣,

今天順便把pipeline中三種儲存方法寫下來,算是對自己學習的一點鼓勵吧,也可以為后來者的學習提供

綿薄之力,寫的不怎么好,諒解

 

爬蟲7部曲,雖然我不知道其他人是規划的

1.創建工程

scrapy startproject xiaohuawang

2.進入xiaohuawang目錄 ,命名爬蟲名和爬取的域名

cd xiaohuawang

scrapy genspider xhwang

此時在能看到如下結構

文件說明:

scrapy.cfg  項目的主配置信息,用來部署scrapy時使用,爬蟲相關的配置信息在settings.py文件中。

items.py    設置數據存儲模板,用於結構化數據,

pipelines    數據處理行為,如:一般結構化的數據持久化

settings.py 配置文件,如:遞歸的層數、並發數,延遲下載等。

spiders      爬蟲目錄,如:創建文件,編寫爬蟲規則

xhwang.py 爬蟲主要代碼

包含了一個用於下載的初始URL,如何跟進網頁中的鏈接以及如何分析頁面中的內容,提取生成  item 的方法。
為了創建一個Spider,必須繼承  scrapy.Spider 類,且定義以下三個屬性:
name:用於區別Spider。該名字必須是唯一的,您不可以為不同的Spider設定相同的名字。
start_urls:包含了Spider在啟動時進行爬取的url列表。因此,第一個被獲取到的頁面將是其中之一。
后續的URL則從初始的URL獲取到的數據中提取。
parse() 是spider的一個方法。被調用時,每個初始URL完成下載后生成的 Response 對象將會作為唯一的參數傳遞給該函數。
該方法負責解析返回的數據(response data),提取數據(生成item)以及生成需要進一步處理的URL的 Request 對象。

注意:一般創建爬蟲文件時,以網站域名命名

3、編寫item  (數據模板) 這里只編寫兩項

4、編寫爬蟲,爬蟲主體代碼還是挺容易理解的

5、編寫pipeline(重點)此處編寫了三種 (保存到mysql 、保存到json文件、以及將圖片存儲到本)

6、settings設置,為了使三種pipeline均生效需要設置如下 數字越小優先級越高

7、運行scrapy crawl xhwang


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM