gpt4 book ai didi

python - 如何通过 Python 访问 Apples iCal-Server

转载 作者:行者123 更新时间:2023-11-28 18:55:15 24 4
gpt4 key购买 nike

我正在尝试通过 Python 在 Mac OS X Snow Leopard 服务器上访问 Apples iCal-Server。服务器已启动并正在运行,并且可以通过 iCal-Application 使用它。现在我需要通过 Python 访问此服务器以将其用作资源规划的后端。我已经查看了 CalDav 模块 ( http://packages.python.org/caldav/index.html ),但是那里提供的示例没有找到任何日历,尽管 Principal-URL 是正确的。

那么如何使用 python 读取用户日历中某个时间范围内的事件?

最佳答案

[不是解决方案,而是调试]

来自 caldav 模块文档中给出的示例:

from datetime import datetime
import caldav
from caldav.elements import dav, cdav

# Principal url
url = "https://user:pass@hostname/user/Calendar"

client = caldav.DAVClient(url)
principal = caldav.Principal(client, url)
calendars = principal.calendars()

问题

  1. url 示例不是 ical 服务器的主要 url
  2. 如果您查看 calendars = principal.calendars() 的代码,它会忽略响应。
  3. 如果您的主要 url 不正确,那么它不会发出任何错误,只会返回一组空的日历。

调试帮助:

在文件objects.py 中,有一个DAVObject 的方法叫做children。您可以修改代码以包含一些调试信息。如果您可以粘贴以下内容,并在问题中粘贴您的信息。

    response = self.client.propfind(self.url.path, body, depth)
print response, self.url.path #provide additional info
print response.raw #provide additional info
for r in response.tree.findall(dav.Response.tag):

关于python - 如何通过 Python 访问 Apples iCal-Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3758358/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com