Skip to content

Instantly share code, notes, and snippets.

@Burekasim
Created October 20, 2021 06:02
Show Gist options
  • Save Burekasim/9fe08d0c24f9f2b9305601fb609b7ac0 to your computer and use it in GitHub Desktop.
Save Burekasim/9fe08d0c24f9f2b9305601fb609b7ac0 to your computer and use it in GitHub Desktop.
Export reinvent sessions to Google Calendar
from datetime import datetime
import json
import pytz
def return_day(timestamp: str, local_timezone: str):
return datetime.fromtimestamp(int(timestamp/1000)).astimezone(pytz.timezone(local_timezone)).strftime(
'%m/%d/%Y')
def return_time(timestamp: str, local_timezone: str):
return datetime.fromtimestamp(int(timestamp/1000)).astimezone(pytz.timezone(local_timezone)).strftime(
'%H:%M %p')
if __name__ == '__main__':
# MODIFY
event_json = json.loads('<REPLACE ME>')
my_timezone = 'Asia/Jerusalem'
# End of MODIFY
print('Subject,Start Date,Start Time,End Date,End Time,All Day Event,Description,Location')
for event in event_json['data']['event']['mySessions']['items']:
event_name = event['name']
event_code = event['alias']
event_location = event['room']
event_status = event['myReservationStatus']
location = event_location['name'] + ', ' + event_location['venue']['name']
description = event['description']
start_day = return_day(event['startTime'], my_timezone)
start_time = return_time(event['startTime'], my_timezone)
end_day = return_day(event['endTime'], my_timezone)
end_time = return_time(event['endTime'], my_timezone)
print(f'[{event_status}] {event_code} - {event_name},{start_day},{start_time},{end_day},{end_time},False,{description},{location}')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment