Python:根据他们的时区在早上5点向用户发送电子邮件

时间:2013-06-30 18:09:00

标签: python pytz

想想谷歌日历,但我有一个表格,其中包含一些发送我的用户的提醒列表。由于我的用户是全球性的,我不能在美国东部时间上午5点向所有人发送我会每小时都有一个cronjob。如果记录与他们输入的日期和早上5点相匹配,则通过电子邮件发送给用户。我还没有弄清楚它的SQL部分,这应该很容易(我认为),现在我正在使用静态变量来测试功能。

我想我的问题是,我想确保脚本在不到一分钟内完成,否则“5:01”就会出现,人们会错过他们的电子邮件。必须有更好的方法来做到这一点。

from datetime import datetime
from pytz import timezone

d_format = "%Y-%m-%d %H:%M"

# This is the value pulled from the database. Format: (Y-m-d 05:00)
record_date = "2013-07-01 05:00"

# Current time in UTC
servertime = datetime.now(timezone('UTC'))

# Let's assume the user lives on the West Coast
user1 = now_utc.astimezone(timezone('US/Pacific'))

if user1.strftime(d_format) == record_date:
    print "Send user an email!"
print ""

# Let's assume the user lives in Singapore
user2 = now_utc.astimezone(timezone('Singapore'))

if user2.strftime(d_format) == record_date:
    print "Send user an email!"
print ""

0 个答案:

没有答案