craftbeerpi4-pione/venv3/lib/python3.7/site-packages/cbpi/utils/encoder.py

25 lines
637 B
Python
Raw Normal View History

2021-03-03 23:49:41 +01:00
import datetime
from json import JSONEncoder
from pandas import Timestamp
class ComplexEncoder(JSONEncoder):
def default(self, obj):
try:
if hasattr(obj, "to_json") and callable(getattr(obj, "to_json")):
return obj.to_json()
elif isinstance(obj, datetime.datetime):
return obj.__str__()
elif isinstance(obj, Timestamp):
print("TIMe")
return obj.__str__()
else:
print(type(obj))
raise TypeError()
except Exception as e:
pass
return None