All Projects → CalyFactory → python-jicson

CalyFactory / python-jicson

Licence: other
python ics to json lib

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to python-jicson

calcardbackup
calcardbackup: moved to https://codeberg.org/BernieO/calcardbackup
Stars: ✭ 67 (+509.09%)
Mutual labels:  icalendar, caldav, ics
ical
📅 Golang iCalendar lexer/parser implementing RFC 5545
Stars: ✭ 28 (+154.55%)
Mutual labels:  icalendar, ics
Radicale
A simple CalDAV (calendar) and CardDAV (contact) server.
Stars: ✭ 2,268 (+20518.18%)
Mutual labels:  icalendar, caldav
icsdb
Open repository of non-working days ics files
Stars: ✭ 20 (+81.82%)
Mutual labels:  icalendar, ics
webcalendar
WebCalendar is a PHP application used to maintain a calendar for a single user or an intranet group of users. It can also be configured as an event calendar.
Stars: ✭ 113 (+927.27%)
Mutual labels:  icalendar, ics
datebook
📅 Generates URLs and downloadable ICS files for adding events to popular calendar apps.
Stars: ✭ 273 (+2381.82%)
Mutual labels:  icalendar, ics
jpl-space-calendar
An app for parsing and publishing the JPL Space Calendar in JSON and ICalendar formats.
Stars: ✭ 13 (+18.18%)
Mutual labels:  icalendar, ics
weather-calendar-feed
Display yr.no weather (supports the entire Earth) forecasts with highly customizable Event titles in your Google Calendar, Android phone, iPhone, Outlook or other iCalendar app
Stars: ✭ 16 (+45.45%)
Mutual labels:  icalendar, ics
remarkable-calendar-creator
Create calendars to display on a reMarkable device as the suspend screen or to write notes on, including events from your own online iCal calendar
Stars: ✭ 28 (+154.55%)
Mutual labels:  icalendar, ics
node-ical
NodeJS class for parsing iCalendar/ICS files
Stars: ✭ 53 (+381.82%)
Mutual labels:  icalendar, ics
laravel-sabre
Sabre.io DAV server adapter for Laravel
Stars: ✭ 33 (+200%)
Mutual labels:  caldav
iec-checker
Static analysis of IEC 61131-3 programs
Stars: ✭ 36 (+227.27%)
Mutual labels:  ics
kcaldav
a simple, safe, and minimal CalDAV server
Stars: ✭ 63 (+472.73%)
Mutual labels:  caldav
alexa-skill
A modular spring-boot application for alexa (amazon) skill.
Stars: ✭ 15 (+36.36%)
Mutual labels:  caldav
Khal
📆 CLI calendar application
Stars: ✭ 1,888 (+17063.64%)
Mutual labels:  icalendar
rrule
🔁 Recurrence rule parsing & calculation as defined in the iCalendar RFC
Stars: ✭ 31 (+181.82%)
Mutual labels:  icalendar
DEVGUIDE
CalConnect project to provide documentation on Calendaring and related issues.
Stars: ✭ 17 (+54.55%)
Mutual labels:  ics
ics calendar
Provides an ICS (icalendar) platform for the Home Assistant calendar
Stars: ✭ 54 (+390.91%)
Mutual labels:  ics
ics
Integration that displays the next event of an ics link (support reoccuring events)
Stars: ✭ 48 (+336.36%)
Mutual labels:  ics
icalparser
Simple ical parser for PHP
Stars: ✭ 56 (+409.09%)
Mutual labels:  icalendar

Python Version

Python ICS to JSon library

python ics to json lib

How to install?

$ pip3 install jicson

Basic Useage

import jicson

#read from file
result = jicson.fromFile('./basic.ics')
print(result)

#read from text
result = jicson.fromText(icsText)
print(result)

#read from web
result = jicson.fromWeb(url, auth = base64_authtoken)
print(result)

This sample will show this result.

BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:[email protected]
X-WR-TIMEZONE:Asia/Seoul
BEGIN:VEVENT
DTSTART:20170131T000000Z
DTEND:20170131T010000Z
DTSTAMP:20170116T065439Z
UID:078843F8-472A-4F1F-AB20-802685C4636E
CREATED:20170115T035832Z
DESCRIPTION:
LAST-MODIFIED:20170115T035832Z
LOCATION:
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:약속1
TRANSP:OPAQUE
X-APPLE-TRAVEL-ADVISORY-BEHAVIOR:AUTOMATIC
END:VEVENT
BEGIN:VEVENT
DTSTART:20170116T000000Z
DTEND:20170116T010000Z
DTSTAMP:20170116T065439Z
UID:211189F0-6EEE-4D23-8BE7-72C1CFD08317
CREATED:20170111T074525Z
DESCRIPTION:
LAST-MODIFIED:20170111T074525Z
LOCATION:
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:약속2
TRANSP:OPAQUE
X-APPLE-TRAVEL-ADVISORY-BEHAVIOR:AUTOMATIC
END:VEVENT
BEGIN:VEVENT
DTSTART:20170113T000000Z
DTEND:20170113T010000Z
DTSTAMP:20170116T065439Z
UID:E5F23518-BAF0-4CED-8593-5FA7DBC8F40A
CREATED:20170111T070526Z
DESCRIPTION:
LAST-MODIFIED:20170111T070526Z
LOCATION:
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:약속3
TRANSP:OPAQUE
X-APPLE-TRAVEL-ADVISORY-BEHAVIOR:AUTOMATIC
END:VEVENT
BEGIN:VEVENT
DTSTART:20170111T010000Z
DTEND:20170111T020000Z
DTSTAMP:20170116T065439Z
UID:68p30d1ichhj8bb471i38b9kchi30bb26sp62bb160qm4e33cpij8c35c4@google.com
CREATED:20170111T005803Z
DESCRIPTION:
LAST-MODIFIED:20170111T005803Z
LOCATION:
SEQUENCE:1
STATUS:TENTATIVE
SUMMARY:
TRANSP:OPAQUE
BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:This is an event reminder
TRIGGER:-P0DT0H10M0S
END:VALARM
END:VEVENT
END:VCALENDAR

this ics file to above json

{
    "VCALENDAR": [
        {
            "PRODID": "-//Google Inc//Google Calendar 70.9054//EN",
            "VERSION": "2.0",
            "CALSCALE": "GREGORIAN",
            "METHOD": "PUBLISH",
            "X-WR-CALNAME": "[email protected]",
            "X-WR-TIMEZONE": "Asia/Seoul",
            "VEVENT": [
                {
                    "DTSTART": "20170131T000000Z",
                    "DTEND": "20170131T010000Z",
                    "DTSTAMP": "20170116T065439Z",
                    "UID": "078843F8-472A-4F1F-AB20-802685C4636E",
                    "CREATED": "20170115T035832Z",
                    "DESCRIPTION": "",
                    "LAST-MODIFIED": "20170115T035832Z",
                    "LOCATION": "",
                    "SEQUENCE": "0",
                    "STATUS": "CONFIRMED",
                    "SUMMARY": "약속1",
                    "TRANSP": "OPAQUE",
                    "X-APPLE-TRAVEL-ADVISORY-BEHAVIOR": "AUTOMATIC"
                },
                {
                    "DTSTART": "20170116T000000Z",
                    "DTEND": "20170116T010000Z",
                    "DTSTAMP": "20170116T065439Z",
                    "UID": "211189F0-6EEE-4D23-8BE7-72C1CFD08317",
                    "CREATED": "20170111T074525Z",
                    "DESCRIPTION": "",
                    "LAST-MODIFIED": "20170111T074525Z",
                    "LOCATION": "",
                    "SEQUENCE": "0",
                    "STATUS": "CONFIRMED",
                    "SUMMARY": "약속2",
                    "TRANSP": "OPAQUE",
                    "X-APPLE-TRAVEL-ADVISORY-BEHAVIOR": "AUTOMATIC"
                },
                {
                    "DTSTART": "20170113T000000Z",
                    "DTEND": "20170113T010000Z",
                    "DTSTAMP": "20170116T065439Z",
                    "UID": "E5F23518-BAF0-4CED-8593-5FA7DBC8F40A",
                    "CREATED": "20170111T070526Z",
                    "DESCRIPTION": "",
                    "LAST-MODIFIED": "20170111T070526Z",
                    "LOCATION": "",
                    "SEQUENCE": "0",
                    "STATUS": "CONFIRMED",
                    "SUMMARY": "약속3",
                    "TRANSP": "OPAQUE",
                    "X-APPLE-TRAVEL-ADVISORY-BEHAVIOR": "AUTOMATIC"
                },
                {
                    "DTSTART": "20170111T010000Z",
                    "DTEND": "20170111T020000Z",
                    "DTSTAMP": "20170116T065439Z",
                    "UID": "68p30d1ichhj8bb471i38b9kchi30bb26sp62bb160qm4e33cpij8c35c4@google.com",
                    "CREATED": "20170111T005803Z",
                    "DESCRIPTION": "",
                    "LAST-MODIFIED": "20170111T005803Z",
                    "LOCATION": "",
                    "SEQUENCE": "1",
                    "STATUS": "TENTATIVE",
                    "SUMMARY": "",
                    "TRANSP": "OPAQUE",
                    "VALARM": [
                        {
                            "ACTION": "DISPLAY",
                            "DESCRIPTION": "This is an event reminder",
                            "TRIGGER": "-P0DT0H10M0S"
                        }
                    ]
                }
            ]
        }
    ]
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].