diff --git a/.gitignore b/.gitignore index 0e3d94f..71b00e2 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,24 @@ public/ node_modules/ *.swp .awsclirc + +reated by https://www.toptal.com/developers/gitignore/api/venv +# Edit at https://www.toptal.com/developers/gitignore?templates=venv + +### venv ### +# Virtualenv +# http://iamzed.com/2009/05/07/a-primer-on-virtualenv/ +.Python +[Bb]in +[Ii]nclude +[Ll]ib +[Ll]ib64 +[Ll]ocal +[Ss]cripts +pyvenv.cfg +.venv +pip-selfcheck.json + +# End of https://www.toptal.com/developers/gitignore/api/venv + +script/calendar_generator/.gitignore diff --git a/script/pull_calendar/pull_event.py b/script/pull_calendar/pull_event.py new file mode 100644 index 0000000..8667045 --- /dev/null +++ b/script/pull_calendar/pull_event.py @@ -0,0 +1,76 @@ +#!/usr/bin/env python3 +import vobject +import wget +import csv +from ics import Calendar, Event + +def get_month(month : int): + match month: + case 1: + return "Janvier" + case 2: + return "Fevrier" + case 3: + return "Mars" + case 4: + return "Avril" + case 5: + return "Mai" + case 6: + return "Juin" + case 7: + return "Juillet" + case 8: + return "Aout" + case 9: + return "Septembre" + case 10: + return "Octobre" + case 11: + return "Novembre" + case 12: + return "Decembre" + + +with open('sample.csv', mode='w') as csv_out: + csv_writer = csv.writer(csv_out, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL) + csv_writer.writerow(['WHAT', 'WHO', 'FROM', 'TO', 'DESCRIPTION']) + url = "https://sogo.deuxfleurs.fr/SOGo/dav/public/lx/Calendar/22-63E29280-1-71341300.ics" + filename = wget.download(url) + + # read the data from the file + data = open(filename).read() + + c = Calendar(data) + for e in c.events: + html = "
  • " + + + if (e.location is not None and "http" in e.location): + html += " en ligne" + elif e.location is not None: + html += e.location + html += "," + + html += " le " + str(e.begin.day) + " " + get_month(e.begin.month) + " à " + + if e.begin.hour == 0: + html += "00:" + else: + html += str(e.begin.hour) + ":" + + if e.begin.minute == 0: + html += "00 " + else: + html += str(e.begin.minute) + "" + + if e.description is not None : + html += ".
    " + e.description + "
  • " + + print("\n" + html)