因為我之前只是簡單的學了一下python,並沒有深入的學習物件導向的內容. 但是學習scrapy需要用到大量和類相關的知識, 所以需要惡補.
0.物件導向程式設計
其實物件導向的這個概念還是比較好理解的, 和我一樣是初學者的應該只接觸過面向過程程式設計. 面向過程的程式設計思路只在乎程式執行的過程.而物件導向程式設計完全不一樣.
物件,object翻譯成中文有 物體,目標,目的,東西的意思. 也就是說物件導向程式設計就是用**模擬物體然後利用這些物體(物件)來程式設計具體的可以看這裡廖雪峰的教程.
偽**:class 長矛(木棍):
長度 = 1公尺
材料 = ['鐵',木頭']
def 刺(self):
造成100點穿刺傷害
def 劈砍(self):
造成50點鈍器傷害
普通的長矛 = 長矛() #得到了長矛的例項普通的長矛.刺() #使用了長矛的方法
1.例項和類
例項和類的關係就像是月餅和月餅模子. 同乙個類的例項之間的屬性可以不一樣,但是方法是一樣的.各個例項之間互不影響.
2.封裝
其實封裝這個概念在函式中是學過的,只不過在類中的封裝更加複雜一點. 函式只是封裝了一些語句,而在類中則是封裝了資料和函式.self = 例項名, self其實就是乙個變數用來存放例項名.
3.繼承
在廖雪峰的教程中講的挺清楚的,子類可以獲得父類所有的方法和屬性,如果子類中的方法和父類中的方法衝突,子類的方法會覆蓋掉父類的方法.
4.多型
在《與孩子一起學程式設計》中寫的很好,多型是指不同的類,可以有同名的兩個(或多個)方法.取決於這些方法分別對應到那個類,它們可以有不同的行為.
這些是類的基本用法,估計寫scrapy夠用了.
python Scrapy模組的安裝
windows系統在已經安裝了python直譯器的情況下可以直接在cmd視窗執行 python syntaxhighlighter viewsource syntaxhighlighter copycode?1 pip install scrapy 這時候需要開啟 syntaxhighlighter...
5 類的實現
類的實現就是定義其成員函式的過程,類的實現有兩種方式 1 在類定義時同時完成成員函式的定義。2 在類定義的外部定義其成員函式。在類的內部定義成員函式 include include c 版的string標頭檔案 using namespace std class computer void setb...
Python Scrapy 爬蟲踩過的坑(一)
一 debug crawled 200 具體報錯資訊如下圖所示 1.200為http 狀態碼,代表訪問ok。2.但是設定的正則的返回的爬取資訊為 也有可能是正規表示式的設定出錯 js介面的原因 二 overridden setting 主要報錯資訊如下圖所示 建立爬蟲檔案的時候,scrapy gen...