如何使用 exchangelib 处理来自时间戳的电子邮件?
How do I process email from timestamp with exchangelib?
我会将最后处理的电子邮件时间戳存储到数据库中,然后当我 运行 我想要执行的过程大于该电子邮件时间戳时。
现在我正在这样做.. 这对 运行 旧记录很好,但现在我想每 1 小时用玉米作业 运行 自动执行此操作。
pytz_tz = pytz.timezone('US/Pacific')
py_dt = pytz_tz.localize(datetime(2022, 2, 3))
py_dt1 = pytz_tz.localize(datetime(2022, 2, 4)) ####ENTER DATE
ews_bfr = EWSDateTime.from_datetime(py_dt)
ews_bfr1 = EWSDateTime.from_datetime(py_dt1)
# print(ews_bfr)
query = Q(subject='MediaCore process')
recent_emails = account.inbox.filter(~query, datetime_received__range=(
ews_bfr,
ews_bfr1
))
但现在我不想使用开始日期和结束日期,而是想传递电子邮件的时间戳作为开始日期,有人可以建议或帮助我解决这个问题吗?
我在 dateutil.parse
的帮助下得到了我的结果
from dateutil.parser import parse
timestampdate = "2022-02-07 18:16:45+00:00"
recentkey = parse(timestampdate)
recent_emails = account.inbox.filter(datetime_received__gt = recentkey) ##__gt and gte for greater than or greater than or equal to for filtering.
我会将最后处理的电子邮件时间戳存储到数据库中,然后当我 运行 我想要执行的过程大于该电子邮件时间戳时。
现在我正在这样做.. 这对 运行 旧记录很好,但现在我想每 1 小时用玉米作业 运行 自动执行此操作。
pytz_tz = pytz.timezone('US/Pacific')
py_dt = pytz_tz.localize(datetime(2022, 2, 3))
py_dt1 = pytz_tz.localize(datetime(2022, 2, 4)) ####ENTER DATE
ews_bfr = EWSDateTime.from_datetime(py_dt)
ews_bfr1 = EWSDateTime.from_datetime(py_dt1)
# print(ews_bfr)
query = Q(subject='MediaCore process')
recent_emails = account.inbox.filter(~query, datetime_received__range=(
ews_bfr,
ews_bfr1
))
但现在我不想使用开始日期和结束日期,而是想传递电子邮件的时间戳作为开始日期,有人可以建议或帮助我解决这个问题吗?
我在 dateutil.parse
的帮助下得到了我的结果from dateutil.parser import parse
timestampdate = "2022-02-07 18:16:45+00:00"
recentkey = parse(timestampdate)
recent_emails = account.inbox.filter(datetime_received__gt = recentkey) ##__gt and gte for greater than or greater than or equal to for filtering.