icalendar

collectiveBSD-2-Clause活跃维护

Python 的 iCalendar 解析库,按 RFC5545 读写 .ics 文件,处理事件、待办、日志和提醒,适合做日历同步或日程管理。

icalendar parser library for Python

v7.3.0发布于 2026-08-19 15:05 UTC1,187star522fork同步于 2026-11-10 17:52 UTC

怎么上手

由 README 提炼,执行前请确认
pip install icalendar
硬件要求按 README 说明

README 未说明,纯 Python 库,无 GPU 或显存要求

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

RFC 5545 兼容的 Python iCalendar 解析与生成库,用来读写和修改日历文件

Python 的 iCalendar 解析库,按 RFC5545 读写 .ics 文件,处理事件、待办、日志和提醒,适合做日历同步或日程管理。

核心能力

  • 按 RFC 5545 解析与生成 iCalendar 文件
  • 创建、检查并修改日历信息
  • 支持 zoneinfo、dateutil.tz、pytz 多种时区实现
  • 依赖仅 python-dateutil 与 tzdata

容易踩的坑

需额外安装 python-dateutil 和 tzdata 两个依赖;README 未给出具体用法示例,需查阅在线 Usage 文档

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v7.3.0
  1. v7.3.0最新正式版2026-08-19 · 2026-08-19 15:05 UTC

    To view the changes, please see the Changelog. This release can be installed from PyPI.

  2. v7.2.22026-07-20 · 2026-07-20 12:03 UTC
    查看更新说明

    To view the changes, please see the Changelog. This release can be installed from PyPI.

  3. v7.2.12026-07-20 · 2026-07-20 11:36 UTC
    查看更新说明

    To view the changes, please see the Changelog. This release can be installed from PyPI.

  4. v7.2.02026-06-23 · 2026-06-23 06:47 UTC
    查看更新说明

    To view the changes, please see the Changelog. This release can be installed from PyPI.

  5. v7.1.32026-06-15 · 2026-06-15 14:05 UTC
    查看更新说明

    To view the changes, please see the Changelog. This release can be installed from PyPI.

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    ========================================================== Internet Calendaring and Scheduling (iCalendar) for Python

    The icalendar <https://pypi.org/project/icalendar/>_ package is an :rfc:5545 compatible parser and generator of iCalendar files.

    icalendar can create, inspect, and modify calendaring information with Python.

    icalendar supports multiple timezone implementations, including zoneinfo <https://docs.python.org/3/library/zoneinfo.html>, dateutil.tz <https://dateutil.readthedocs.io/en/latest/tz.html>, and pytz <https://pypi.org/project/pytz/>_.


    :Homepage: https://icalendar.readthedocs.io/en/stable/ :Discussions: https://github.com/collective/icalendar/discussions :Issues: https://github.com/collective/icalendar/issues :Code: https://github.com/collective/icalendar :Dependencies: python-dateutil <https://pypi.org/project/python-dateutil/>_ and tzdata <https://pypi.org/project/tzdata/>. :License: 2-Clause BSD License <https://github.com/collective/icalendar/blob/main/LICENSE.rst> :Contribute: Contribute to icalendar <https://icalendar.readthedocs.io/en/latest/contribute/index.html>_ :Funding: Open Collective <https://opencollective.com/python-icalendar>_ :icalendar chat: https://matrix.to/#/%23icalendar:chat.pycal.org :PyCal chat: https://matrix.to/#/%23pycal:chat.pycal.org :Python Calendaring Ecosystem: https://pycal.org


    .. image:: https://img.shields.io/pypi/v/icalendar :target: https://pypi.org/project/icalendar/ :alt: Python package version on PyPI

    .. image:: https://img.shields.io/github/v/release/collective/icalendar :target: https://pypi.org/project/icalendar/#history :alt: Latest release

    .. image:: https://img.shields.io/pypi/pyversions/icalendar :target: https://pypi.org/project/icalendar/ :alt: Supported Python versions

    .. image:: https://static.pepy.tech/personalized-badge/icalendar?period=total&units=INTERNATIONAL_SYSTEM&left_color=GREY&right_color=GREEN&left_text=downloads :target: https://pypistats.org/packages/icalendar :alt: Downloads from PyPI

    .. image:: https://img.shields.io/github/actions/workflow/status/collective/icalendar/tests.yml?branch=main&label=main&logo=github :target: https://github.com/collective/icalendar/actions/workflows/tests.yml?query=branch%3Amain :alt: GitHub Actions build status for main

    .. image:: https://readthedocs.org/projects/icalendar/badge/?version=latest :target: https://icalendar.readthedocs.io/en/latest/ :alt: Documentation status

    .. image:: https://coveralls.io/repos/github/collective/icalendar/badge.svg?branch=main :target: https://coveralls.io/github/collective/icalendar?branch=main :alt: Test coverage

    .. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json :target: https://github.com/astral-sh/ruff :alt: Ruff

    .. image:: https://img.shields.io/badge/%F0%9F%A4%91-Funding-brightgreen :target: https://opencollective.com/python-icalendar :alt: Funding

    Install icalendar

    See how to install icalendar <https://icalendar.readthedocs.io/en/stable/install.html>_.

    Usage

    For how to use icalendar, including how to read, modify, and write iCalendar files, see the Usage <https://icalendar.readthedocs.io/en/latest/how-to/usage.html>_ guide.

    Related projects

    VObject <https://github.com/py-vobject/vobject>_ VObject is intended to be a full-featured Python package for parsing and generating Card and Calendar files.

    iCalEvents <https://github.com/jazzband/icalevents>_ iCalEvents is built on top of icalendar, and allows you to query iCalendar files to get the events happening on specific dates. It manages recurrent events as well.

    recurring-ical-events <https://pypi.org/project/recurring-ical-events/>_ Library to query an icalendar.Calendar object for events and other components happening at a certain date or within a certain time.

    x-wr-timezone <https://pypi.org/project/x-wr-timezone/>_ Library and command line tool to make icalendar.Calendar objects and files from Google Calendar, using the non-standard X-WR-TIMEZONE property, compliant with the :rfc:5545 standard.

    ics-query <http://pypi.org/project/ics-query>_ Command line tool to query iCalendar files for occurrences of events and other components.

    icalendar-compatibility <https://icalendar-compatibility.readthedocs.io/en/latest/>_ Access event data compatible with :rfc:5545 and different implementations.

    caldav <https://caldav.readthedocs.io/>_ CalDAV is a :rfc:4791 client library for Python based on icalendar.

    icalendar-anonymizer <https://pypi.org/project/icalendar-anonymizer/>_ Anonymize iCalendar files by stripping personal data while preserving technical properties for bug reproduction.

    ical2jcal <https://pypi.org/project/ical2jcal>_ Convert between iCalendar and jCalendar.

    sphinx-icalendar <https://pypi.org/project/sphinx-icalendar/>_ Provides calendar code blocks and syntax highlighting in a tabbed interface for documentation as an extension to Sphinx.

    Python Calendaring Ecosystem <https://pycal.org/>_ The standards compliant, integrated Python calendar packages.

    Change log

    See the change log <https://icalendar.readthedocs.io/en/latest/reference/changelog.html>_ for the latest updates to icalendar.