Internet Calendaring and Scheduling (iCalendar) for Python

The icalendar package is an 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, dateutil.tz, and pytz.


Homepage
https://icalendar.readthedocs.io/en/stable/
Community Discussions
https://github.com/collective/icalendar/discussions
Issue Tracker
https://github.com/collective/icalendar/issues
Code
https://github.com/collective/icalendar
Dependencies
python-dateutil and tzdata.
License
2-Clause BSD License
Contribute
Contribute to icalendar
Funding
Open Collective

Install icalendar

See how to install icalendar.

Usage

For how to use icalendar, including how to read, modify, and write iCalendar files, see the Usage guide.

Related projects

VObject

VObject is intended to be a full-featured Python package for parsing and generating Card and Calendar files.

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

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

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 5545 standard.

ics-query

Command line tool to query iCalendar files for occurrences of events and other components.

icalendar-compatibility

Access event data compatible with 5545 and different implementations.

caldav

CalDAV is a 4791 client library for Python based on icalendar.

icalendar-anonymizer

Anonymize iCalendar files by stripping personal data while preserving technical properties for bug reproduction.

ical2jcal

Convert between iCalendar and jCalendar.

sphinx-icalendar

Provides calendar code blocks and syntax highlighting in a tabbed interface for documentation as an extension to Sphinx.

Python Calendaring Ecosystem

The standards compliant, integrated Python calendar packages.

Change log

See the change log for the latest updates to icalendar.