iCalendar解析器,带查询功能的生成器库

pical的Python项目详细描述


pical是python iCalendar库。

支持的功能:

  • 分析、生成ICS文件(iCalendar版本2.0/rfc5545、rfc2445)
  • 查询具有时间范围的组件(caldav/rfc4791)
  • 值将作为python本机类型进行访问

不支持的功能:

  • 闰秒支持
  • 精度高于double的浮点值

简单用法:

from datetime import datetime
import pical
cals = pical.parse(open("tests/google_calendar_ex1.ics"))
cal = cals[0]
# subcomponents are stored in children
for c in cal.children:
       if c.name == "VEVENT":
               print c["DTSTART"]

时间范围查询示例:

from datetime import datetime
import pical
cals = pical.parse(open("tests/google_calendar_ex1.ics"))
expcal = cals[0].time_range(expand=[datetime(2010,1,1,tzinfo=pical.utc), datetime.now(pical.utc)])
for line in expcal.clone(in_utc=True).serialize():
       print line

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java的单元测试测试用例库。util。列出实现   java通过超类进行序列化/反序列化   java Android获取设备语言ISO字符串   java如何打开广告的行动。移动   Eclipse IDE for(嵌入式C/C++)开发者202012:经典的深色主题深黑色背景和菜单中的文本   java使用不同的内容动态创建TableView(JavaFX)   java JAXB将多个同名节点解组   java ClassDefNotFoundException,即使类由类加载器加载(服务器上安装了多个应用程序)   java有没有办法关闭在后端生成的MqttClient线程?   html如何在网站上的java小程序中包含图像?   java无法访问已分配给超类引用的子类实例变量   java在TableViewer中双击打开对话框   列出如何创建ListNode。JAVA   java如何从文本中输出的数组中放入随机图像