scrapy TypeError: Object of type 'PangciItem' is not JSON serializable

json序列化問題

發現不用重寫 json.JSONEncoder

今天寫爬蟲處理 item 時

使用ubuntu16.4,python3 ,scrapy

 

報出錯誤: TypeError: Object of type 'PangciItem' is not JSON serializable

是 json序列化問題,然後自己在網上查,大部分的解決方法是自定義類並重寫 json.JSONEncoder

錯誤代碼 21 行:

實驗 print( type(item) ) <放與 函數 process_item 中>

發現item不是字典類型的,於是考慮到將 item 轉換 成字典

def process_item(self, item, spider):
		print(type(item))
		dic = dict(item)
		print(type(dic))
		data = json.dumps(dic,ensure_ascii=False)
        //併成一行是data = json.dumps(dict(item),ensure_ascii=False)
		self.file.write(data)
		return item

 

操作成功,運行不在報 json 序列化錯誤。

是數據類型的問題,json.dumps 操作字典類型數據可自行序列化,

其他的數據類型 需要自己處理,序列化

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章