【Python】datetime 时区转换, celery 结果 date_done比东八区晚8小时

1. 通过 AsyncResult获取任务结果对象

from celery.result import AsyncResult
import pytz
from datetime import datetime

# 根据任务ID获取任务结果对象
result = AsyncResult(task_id)

2. 将 UTC时间转为东八区时间

# 获取完成时间(UTC时间)
date_done_utc = result.date_done

# 创建UTC时区对象
utc_tz = pytz.timezone('UTC')

# 将时间转换为UTC时区
date_done_utc = utc_tz.localize(date_done_utc)

# 创建本地时区对象
local_tz = pytz.timezone('Asia/Shanghai')

# 将时间转换为本地时区
date_done_local = date_done_utc.astimezone(local_tz)

# 打印本地时间
print(f"任务完成时间(本地时间): {date_done_local}")
posted @ 2024-01-18 14:42  是阿杰呀  阅读(127)  评论(0)    收藏  举报