因此,我正在通过 python 制作一个小型 App Engine 应用程序,该应用程序从文件中读取时间表并将其放入您的 Google 日历中。时间表中的所有时间/日期都独立于 DST,因此我需要以相同的方式放入事件。由于所有事件都在多个 DST 期间每周重复发生,这使情况变得复杂。
我正在使用日历 API V3。
我首先为此创建自己的日历。
calander = {
'summary': 'Calender Name,
'location': 'Somewhere in Ireland',
'timeZone': 'GMT',
}
然后我用许多不同的重复事件填充它
event = {
'summary': 'CS101',
'description': 'Intro to Comp Sci',
'location': 'Bla bla bla',
'start': {
'dateTime': '2012-10-03T10:00:00.000-00:00',
'timeZone': 'GMT'
},
'end': {
'dateTime': '2012-10-03T11:00:00.000-00:00',
'timeZone': 'GMT'
},
'recurrence': [
'RRULE:FREQ=WEEKLY;UNTIL=20121231',
],
}
当然,在我的实际程序中,所有这些字符串都是动态生成的,但我在这里没有问题。
问题是在夏令时 DST 期间发生的任何事件都会自动比我给出的时间晚 1 小时。我确信这是一个错误,因为我将事件和日历的时区设置为 GMT,但 GMT 不遵守夏令时。对我喂食的时间不应该做任何事情。
例如,时间表显示,从 9 月 1 日到 12 月 31 日,每周一上午 10 点到 11 点举行活动。如果将此信息输入日历,则 10 月 28 日(欧洲后备日期)之前的所有事件将比时间表的时间晚一小时。夏季以外的所有时间都很好。
如果我告诉日历活动从上午 10 点开始,我不希望它针对 DST 进行调整。如何避免这种情况?