今天爬蟲時偶遇的一個問題:當你爬取的網站對應位置沒有內容(爲空)時,python爬蟲獲取的值爲 NoneType(<class ‘NoneType’>),然後就直接格式化輸出(format),結果當然GG!!
下面談談這個問題:
原因:正如所報異常的意思,format格式化輸出不支持NoneType類型。
Debug:不通過格式化輸出打印爬蟲獲取的內容,發現有些數據域對應的值爲None,type(None) --> <class ‘NoneType’>。
解決:要解決也很簡單,對爬蟲獲取的數據在格式化打印輸出前進行處理,將None改爲其他 str 或者 int 類型便於標識的字段即可!
//result爲爬蟲獲取的數據集
for i in result:
if i is None:
i = 0; # 此處我將None重置爲 0
python的爬蟲經常會爬取到None這種節點,當你獲取的節點是None時,後續若需要對其進行操作就會報錯,因此如果爬蟲的數據中容易出現獲取到None時,一定要先對爬蟲獲得的數據集進行處理,將None替換爲其他字段。