[不是解决方案,而是调试]
从 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()
问题
- url 示例不是 ical 服务器的主要 url
- 如果您查看 calendars = principal.calendars() 的代码,它会忽略响应。
- 如果您的主要网址不正确,则不会发出任何错误,它将仅返回一组空日历。
调试帮助:
在文件 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):