You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将EWS获取的datetime_received从UTC+0转换为GMT+2时区

EWS接口邮件接收时间时区转换方案

需要将EWS接口获取的收件箱邮件datetime_received字段从UTC+0时区转换为GMT+2时区,原有测试代码如下:

credentials = Credentials(email, wachtwoord)
acc = Account(email, credentials=credentials, autodiscover=True)

for item in acc.inbox.all().order_by('-datetime_received')[:100]:
    print(item.datetime_received)
    # 输出:2021-13-09 11:08:31+00:00 
    # 预期输出:2021-13-09 13:08:31+02:00

解决方案

借助pytz库指定GMT+2对应的目标时区,调用astimezone()方法转换带时区信息的时间对象即可,完整实现代码如下:

from datetime import datetime
import pytz

credentials = Credentials(email, password)
acc = Account(email, credentials=credentials, autodiscover=True)
tz = pytz.timezone('Europe/Amsterdam')

for item in acc.inbox.all().order_by('-datetime_received')[:100]:
    dt = item.datetime_received.astimezone(tz)
    print(dt)

内容的提问来源于stack exchange,提问作者Minimumspace

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 12:06:02