最近在輸出json時,一直會出現TypeError : Object of type 'datetime' is not JSON serializable

就把錯誤訊息拿去餵狗了一下。

發現到因為json dumps原功能是將dict轉化為str,但不支援轉化時間,所以必須要將json類部分內容重新改寫來處理。

所以必須加一段程式碼在前面並且在dumps時引用。

use this code.

    class dateEncode(json.JSONEncoder):
        def default(self, obj):
            if isinstance(obj, datetime.datetime):
               return obj.strftime('%Y-%m-%d %H:%M:%S')
            else:
               return json.JSONEncoder.default(self, obj)

最後在json.dumps時引入上面的class

dump = json.dumps(yourJson, cls = dateEncode)

參考網址:github