This is a fork of https://github.com/druths/icssplitter
You may need to break apart an ICS file so that you can upload it to a cloud-based system, but you may not know which years you have calendar events for. To solve this, I modified icssplitter and added ics_info.py. This will split out a list of years that you can then feed into icssplitter.
Basic usage for this tool is:
python ics_info.py my_big_file.ics.
In case the original project gets removed, here is the README for icssplitter.
ics files allow us to move calendar events between calendaring systems (e.g., Google and Exchange). The problem is that they get big... and cloud-based systems aren't much good at uploading large ICS files (e.g., Google has a ridiculously small threshold - something like 500 Kb).
The ics_splitter.py
utility works around this by letting you extract events by years, making
smaller ics files that can (hopefully) be uploaded serially.
Basic usage for this tool is:
python ics_splitter.py my_big_file.ics 2016 my_2016_events.ics
Replace the arguments with your big file, the year you want to extract and the file you want to write the extracted events into. Note that, in addition to the events, the script pulls out all the boilerplate stuff (like timezones and such) that are sometimes required to make a valid ics file.
Enjoy!