Scrapy學習筆記

2022-06-13 21:42:10 字數 1288 閱讀 5351

**於網路

上圖就是整個scrapy的架構圖了,主要包括部分作用如下:

scrapy執行流程:

scrapy engine從spiders獲取初始的url,並將這些request交給scheduler進行排列。

scrapy engine從scheduler獲取處理好的request。

scrapy engine將responses交給spiders進行處理,預設傳遞給spiders的parse()函式,所以spiders必須定義這個函式。

spiders提取出item需要的資料和接著要爬的url,並將這些資料和url交給scrapy engine。

scrapy engine將資料交給item pipeline進行處理,將url交給scheduler

重複步驟2,直到scheduler中不存在任何requests,程式停止。

目標:爬取python官網(獲得網頁的title、url和body,暫時不儲存資料。

1.建立乙個scrapy專案,使用如下命令(專案名為python_project,可以自己更改):

scrapy startproject python_project
建立專案後,在命令執行的目錄下會產生乙個與專案同名的資料夾,其結構大致如下:

這些檔案的作用大致如下:

2.定義item:item是儲存爬取到的資料的容器,其使用方法與python字典類似,並且踢動額外的保護機制來避免拼寫錯誤導致的未定義字段錯誤。

通過建立乙個scrapy.item類,並定義型別為scrapy.field的類屬性來定義乙個item。

import

scrapy

class

pythonprojectitem(scrapy.item):

title =scrapy.field()

url =scrapy.field()

body = scrapy.field()

為了建立乙個spider,必須繼承scrapy.spider類,並定義以下三個屬性或方法:

這裡我們在parse函式中不定義獲取url的實現,只解析要獲取的資料。因此這個爬蟲只有乙個url可用,爬蟲爬取完這個網頁便會停止。在spiders目錄下新建python_spider.py檔案,編輯如下:

Scrapy學習筆記(三)

抓取 資訊 class youdailispider crawlspider name youdaili allowed domains youdaili.net start urls rules rule linkextractor allow r d d html callback parse ...

scrapy 爬蟲學習筆記

1.安裝scrapy pip install i 源 scrapy 2.手動建立scarpy專案 scrapy startproject 專案名稱 3.scrapy genspider jobbole blog.jobbole.com 使用自帶模板 4.除錯 修改setting檔案中obey rob...

scrapy學習筆記 初識

生成乙個scrapy目錄 1 scrapy startproject 目錄名 在當前目錄建立scrapy專案 2 cd 目錄名 移動到建立的目錄下 3 scrapy genspider demo 網域名稱 生成乙個demo.py檔案,產生spiders爬蟲 4 scrapy crawl demo 執...