Spider爬蟲框架之Spiders模塊

Spiders

Spiders 是一些爬蟲類的集合,這些爬蟲定義了爬哪些網站、如何去爬這些網站以及如何去從頁面抽取結構化數據。

換句話說,Spiders是你定義用於爲特定網站(或者在某些情況下是一組網站)抓取和解析頁面的自定義行爲的地方。

對於爬蟲來說,在爬取週期中會經歷以下事情:

    1,首先生成抓取第一個URL的初始Requests,然後指定一個回調函數,使用從這些請求下載的響應來調用回調函數。

第一個執行請求通過調用start_requests()方法獲得,該方法默認情況下爲start_urls和parse方法中指定的URL生成Request作爲回調函數。

    2, 在回調函數中,解析響應(網頁),並返回帶提取數據的dicts,Item對象,Request對象或這些對象的迭代。

這些請求還將包含一個回調(可能是相同的),然後由Scrapy下載,然後通過指定的回調處理它們的響應。

    3,在回調函數中,通常使用選擇器Selectors(但您也可以使用BeautifulSoup,lxml或您喜歡的任何機制)解析頁面內容,並使用解析的數據生成項目。

    4,最後,從爬蟲返回的項目通常會持久化到數據庫(在某些Pipeline中)或使用Feed導出寫入文件。

儘管這個週期適用於(或多或少)任何類型的爬蟲,但爲了不同的目的,有不同類型的默認爬蟲捆綁到了Scrapy中。


參考鏈接:https://docs.scrapy.org/en/latest/topics/spiders.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章