Python高階爬蟲框架Scrapy簡介

2021-09-13 10:43:01 字數 1339 閱讀 7999

scrapy 框架

scrapy是用純python實現乙個為了爬取**資料、提取結構性資料而編寫的應用框架,用途非常廣泛。

框架的力量,使用者只需要定製開發幾個模組就可以輕鬆的實現乙個爬蟲,用來抓取網頁內容以及各種,非常之方便。

scrapy架構圖(綠線是資料流向):

95625f65089e4bc98a269cfda6701597.png

scrapy engine(引擎): 負責spider、itempipeline、**********、scheduler中間的通訊,訊號、資料傳遞等。

scheduler(排程器): 它負責接受引擎傳送過來的request請求,並按照一定的方式進行整理排列,入隊,當引擎需要時,交還給引擎。

spider(爬蟲):它負責處理所有responses,從中分析提取資料,獲取item欄位需要的資料,並將需要跟進的url提交給引擎,再次進入scheduler(排程器),

item pipeline(管道):它負責處理spider中獲取到的item,並進行進行後期處理(詳細分析、過濾、儲存等)的地方.

spider middlewares(spider中介軟體):你可以理解為是乙個可以自定擴充套件和操作引擎和spider中間通訊的功能元件(比如進入spider的responses;和從spider出去的requests)

b847d7fa404a404ca0a656028ada63b5.png

scrapy的運作流程

**寫好,程式開始執行...

spider:老大要我處理***x.com。

引擎:你把第乙個需要處理的url給我吧。

spider:給你,第乙個url是******x.com。

引擎:hi!排程器,我這有request請求你幫我排序入隊一下。

排程器:好的,正在處理你等一下。

引擎:hi!排程器,把你處理好的request請求給我。

排程器:給你,這是我處理好的request

spider:(處理完畢資料之後對於需要跟進的url),hi!引擎,我這裡有兩個結果,這個是我需要跟進的url,還有這個是我獲取到的item資料。

引擎:hi !管道 我這兒有個item你幫我處理一下!排程器!這是需要跟進url你幫我處理下。然後從第四步開始迴圈,直到獲取完老大需要全部資訊。

管道``排程器:好的,現在就做!

製作 scrapy 爬蟲 一共需要4步:

新建專案 (scrapy startproject ***):新建乙個新的爬蟲專案

明確目標 (編寫items.py):明確你想要抓取的目標

製作爬蟲 (spiders/xxspider.py):製作爬蟲開始爬取網頁

儲存內容 (pipelines.py):設計管道儲存爬取內容

python的高階爬蟲框架Scrapy

眾所周知,scrapy 是乙個高階的python爬蟲框架,功能極其強大,擁有它就可以快速編寫出乙個爬蟲專案,擁有它就可以搭建分布式架構。那麼,請問這麼強大的框架要怎麼擁有?很簡單,由於我只嘗試了windows平台下的安裝,所以下文也是該平台下的安裝步驟。windows的安裝是比較常見的,相對其他兩種...

Python爬蟲高階一之爬蟲框架概述

爬蟲入門之後,我們有兩條路可以走。乙個是繼續深入學習,以及關於設計模式的一些知識,強化python相關知識,自己動手造輪子,繼續為自己的爬蟲增加分布式,多執行緒等功能擴充套件。另一條路便是學習一些優秀的框架,先把這些框架用熟,可以確保能夠應付一些基本的爬蟲任務,也就是所謂的解決溫飽問題,然後再深入學...

高階爬蟲Scrapy框架

記錄下容易出錯的地方 from movie.items import movieitem 資料夾.檔名 引入 類名 import scrapy from items import movieitem class shuichanspider scrapy.spider name shuichan a...