amw*_*amw 4 backup wget caldav carddav
到现在为止,我Google Calender每天wget都使用public ".ics"Link进行个人备份.
现在我想切换到只有caldav访问权限的新服务.
有没有下载我的所有的可能性caldav和carddav数据与一个wget/ curl?
这个下载的数据应该让我有可能备份丢失的数据.
提前致谢.
编辑
我创建了一个非常简单的php文件,其工作方式是hmh解释的.不知道这种方式是否适用于不同的提供商,但对于mailbox.org,它运作良好.
你可以在这里找到它https://gist.github.com/ahemwe/a2eaae4d56ac85969cf2.
hnh*_*hnh 13
请具体说说,您使用的新服务/服务器是什么?
这不是专门的CalDAV,但是大多数DAV服务器仍然提供了使用单个GET获取所有事件/待办事项的方法.通常通过使用GET定位相关集合,例如,像其中一个:
curl -X GET -u login -H "Accept: text/calendar" https://myserver/joe/home/
curl -X GET -u login -H "Accept: text/calendar" https://myserver/joe/home.ics
Run Code Online (Sandbox Code Playgroud)
在CalDAV/CardDAV中,您可以使用PROPFIND获取集合的全部内容:
curl -X PROPFIND -u login -H "Content-Type: text/xml" -H "Depth: 1" \
--data "<propfind xmlns='DAV:'><prop><calendar-data xmlns='urn:ietf:params:xml:ns:caldav'/></prop></propfind>" \
https://myserver/joe/home/
Run Code Online (Sandbox Code Playgroud)
用日历替换日历数据
<address-data xmlns="urn:ietf:params:xml:ns:carddav"/>
Run Code Online (Sandbox Code Playgroud)
对于CardDAV.
这将为您提供一个嵌入了iCal/vCard内容的XML实体.要恢复它,您需要解析XML并提取数据(不是很难).
注意:虽然标准,但有些服务器拒绝或只是省略内容(lame!file bug reports ;-).