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
總結
以上是生活随笔為你收集整理的Spider爬虫框架之Spiders模块的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python --通过urlretrie
- 下一篇: PMP子过程定义总结