You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
import datetime
import tzlocalfrom dateutil import tzfrom dateutil.parser import parse as date_parse
def to_dateTime(datetime: datetime.datetime): """converts a datetime into json format for rest api""" if not datetime.tzinfo: datetime = datetime.astimezone() zone = tzlocal.get_localzone().zone datetime = datetime.isoformat(timespec="seconds") return {"timeZone": zone, "dateTime": datetime}
def from_dateTime(dateTime): """converts to a datetime from json format returned by rest api""" timezone = tz.gettz(dateTime["timeZone"]) datetime = date_parse(dateTime["dateTime"]) datetime.replace(tzinfo=timezone) return datetime
|