如何使用python处理ical标准记录中的时区差异?

发布于 2024-11-06 20:26:54 字数 1130 浏览 5 评论 0原文

我正在尝试处理来自 python gdata api 的 ical 重复记录。

<前><代码>DTEND:20110421T190000 DTEND 的参数: TZID [u'欧洲/伦敦'] 开始时间:20110421T180000 DTSTART 的参数: TZID [u'欧洲/伦敦'] 规则:FREQ=每周;BYDAY=TH V时区 TZID:欧洲/伦敦 日光 DT启动:19700329T010000 TZOFFSETFROM: +0000 TZNAME:BST TZOFFSETTO:+0100 规则:FREQ=每年;BYMONTH=3;BYDAY=-1SU
   STANDARD
      DTSTART: 19701025T020000
      TZOFFSETFROM: +0100
      TZNAME: GMT
      TZOFFSETTO: +0000
      RRULE: FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU

   X-LIC-LOCATION: Europe/London

我可以从 事件 时间范围“确实”应该是 17:00 - 18:00(英国夏令时间),但 DTSTART/DTEND 似乎列出了 GMT,然后需要“标准”来纠正?

我正在尝试在 python 中设置一个自动过程来“读取”这些重复并将它们复制为实际日期和时间。

确保准确性的最佳方法是什么?我知道 dateutil 可以解析时区信息,但我该选择哪一个,最重要的是我该如何解析应用此更改以便我获得具有“真实”时间的Python日期时间对象?

谢谢 :)

I'm trying to process a ical recurrence record from the python gdata api.

DTEND: 20110421T190000
params for  DTEND:
   TZID [u'Europe/London']
DTSTART: 20110421T180000
params for  DTSTART:
   TZID [u'Europe/London']
RRULE: FREQ=WEEKLY;BYDAY=TH
VTIMEZONE
   TZID: Europe/London
   DAYLIGHT
      DTSTART: 19700329T010000
      TZOFFSETFROM: +0000
      TZNAME: BST
      TZOFFSETTO: +0100
      RRULE: FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
   STANDARD
      DTSTART: 19701025T020000
      TZOFFSETFROM: +0100
      TZNAME: GMT
      TZOFFSETTO: +0000
      RRULE: FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU

   X-LIC-LOCATION: Europe/London

I can see from the event that the time frame should 'really' be 17:00 - 18:00 (British Summer Time) but DTSTART/DTEND seems to list GMT and then need "standard" to rectify?

I'm trying to set up an automatic process in python to 'read' these recurrence and replicate them as actual date and times.

What's the best way to do this to ensure accuracy? I know that dateutil can parse the timezone information, but which one do i pick, and most importantly how do I apply this change so that i get a python datetime object with the "real" time?

Thanks :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

旧梦荧光笔 2024-11-13 20:26:54

我以前使用过 Pytz,取得了巨大成功: http://pytz.sourceforge.net/

I've used Pytz before, with great success: http://pytz.sourceforge.net/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文