有人可以给我一个使用 python icalendar库生成icalendar文件的 VTIMEZONE 部分的示例吗?
我相信这可以通过使用 icalendar.cal.Timezone 组件类来完成,但还不知道具体如何。
优选地,生成的 icalendar 文件部分将类似于从 Mac OS X ICal 程序中导出的样本(或类似,但仍然有效的 icalendar 格式)。
BEGIN:VTIMEZONE
TZID:America/Denver
BEGIN:DAYLIGHT
TZOFFSETFROM:-0700
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
DTSTART:20070311T020000
TZNAME:MDT
TZOFFSETTO:-0600
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0600
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
DTSTART:20071104T020000
TZNAME:MST
TZOFFSETTO:-0700
END:STANDARD
END:VTIMEZONE
到目前为止,我有这个工作代码,但它不包括所需的 STANDARD 和 DAYLIGHT VTIMEZONE 元素。
import icalendar
timezone = icalendar.cal.Timezone()
timezone.add('TZID', 'America/Denver')
timezone.to_ical()