3

我正在尝试使用python-dateutil创建一个 rrule 来安排一个事件,以便每天在美国东部标准时间下午 6 点运行。

我正在使用的当前规则很简单:

byhour:23;

这在非夏令时呈现为下午 6 点,但在夏令时呈现为下午 7 点。

如何更改此设置以考虑 DST?

我在(Linux)上运行的服务器当前配置为 EST 并且已经考虑了 DST,因此看起来 python-dateutil 忽略了这一点并基于 UTC 进行计算。

4

1 回答 1

5

您不应为此使用 BYHOUR。

您所需要的只是一个 RRULE:FREQ=DAILY您的 DTSTART 需要使用时区 id 的本地时间,而不是 UTC,例如:

DTSTART;TZID=America/New_York:20160805T180000
RRULE:FREQ=DAILY
于 2016-08-05T09:28:00.420 回答