Last active
December 21, 2018 09:24
-
-
Save sielicki/9c1639da8d5142d98762fe55f89d8677 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{"last_check":"2018-06-08T00:22:24Z","pypi_version":"10.0.1"} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
home = /usr/bin | |
include-system-site-packages = false | |
version = 3.6.5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
arrow==0.4.2 | |
cssselect==1.0.3 | |
ics==0.4 | |
lxml==4.2.5 | |
pkg-resources==0.0.0 | |
python-dateutil==2.7.3 | |
six==1.11.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python3 | |
import urllib.request, ics, lxml.etree, arrow | |
from lxml.cssselect import CSSSelector | |
from dateutil import parser | |
def gencal(): | |
url = "https://registrar.wisc.edu/dates/" | |
sel = CSSSelector(".tribe-event-date-start , .tribe-events-list-event-title") | |
htmlparser = lxml.etree.HTMLParser() | |
response = urllib.request.urlopen(url) | |
print("Grabbed calendar from: {}".format(url)) | |
tree = lxml.etree.parse(response, htmlparser) | |
selected = sel(tree) | |
tuples = zip(*[iter(selected)] * 2) | |
cal = ics.Calendar() | |
print("Parsing events") | |
for tup in tuples: | |
name, date = tup | |
new_event = ics.Event() | |
new_event.name = name.text | |
new_event.begin = arrow.get(parser.parse(date.text)) | |
new_event.make_all_day() | |
cal.events.add(new_event) | |
print("Found {} events".format(len(cal.events))) | |
print("Writing calendar to uwmadison.ics") | |
with open('uwmadison.ics', 'w') as output: | |
output.writelines(cal) | |
print("Wrote calendar to uwmadison.ics") | |
if __name__ == '__main__': | |
gencal() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
BEGIN:VCALENDAR | |
PRODID:ics.py - http://git.io/lLljaA | |
VERSION:2.0 | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181212 | |
SUMMARY:Last Fall 2018 class day | |
TRANSP:OPAQUE | |
UID:8985af56-f5a4-4830-8e28-61f5699cf520@8985.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190201 | |
SUMMARY:Deadline for students to add\, swap\, or change sections in a Spring term class (after: need department permission) | |
TRANSP:OPAQUE | |
UID:4eef7914-538f-41c9-9ab0-368b54a0d973@4eef.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190215 | |
SUMMARY:Deadline for students (except Graduate) to request pass/fail or credit/audit options for a Spring term class | |
TRANSP:OPAQUE | |
UID:eb93f232-f748-47e6-8240-c3ee497ee7b7@eb93.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180905 | |
SUMMARY:Instruction for Fall 2018 begins | |
TRANSP:OPAQUE | |
UID:be398bf1-9449-4fec-b555-2b6d2fb65d0e@be39.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190313 | |
SUMMARY:Schedule of Classes released for Fall 2019 | |
TRANSP:OPAQUE | |
UID:913e8ad1-c95a-4a65-b435-583b1ab0a688@913e.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180914 | |
SUMMARY:Deadline for students to add\, swap\, or change sections in a Fall term class (after: need department permission) | |
TRANSP:OPAQUE | |
UID:46e7a6db-cb9f-4418-b28e-9204a5be2e89@46e7.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180912 | |
SUMMARY:Deadline for students to drop a Fall term class and have no record of it on transcript (after: will show as DR) | |
TRANSP:OPAQUE | |
UID:6ecf6a9d-7dde-45a6-b32d-021b1f053bba@6ecf.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180928 | |
SUMMARY:Deadline for students (except Graduate) to request pass/fail or credit/audit options for a Fall term class | |
TRANSP:OPAQUE | |
UID:50ef068c-caa7-4f3b-8498-04fff08bfaca@50ef.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190122 | |
SUMMARY:Instruction for Spring 2019 begins | |
TRANSP:OPAQUE | |
UID:d5e340c3-5457-46df-9ddd-efadcad944e6@d5e3.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181112 | |
SUMMARY:Students begin enrolling for Spring term classes according to their appointment times | |
TRANSP:OPAQUE | |
UID:11410499-d493-405c-b7b9-9bef04860962@1141.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190130 | |
SUMMARY:Deadline for students to drop a Spring term class and have no record of it on transcript (after: will show as DR) | |
TRANSP:OPAQUE | |
UID:83a27907-c267-4002-a5c1-b461a0dcb202@83a2.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190329 | |
SUMMARY:Deadline for students to add a Spring term class with department permission (after: need academic dean approval) | |
TRANSP:OPAQUE | |
UID:475fddb9-2704-495d-9be2-a1ddd96172d9@475f.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190516 | |
SUMMARY:Deadline for instructors to submit Spring term final grades by 11:59 pm | |
TRANSP:OPAQUE | |
UID:61ab3e84-51bc-447a-af77-2c4d50346385@61ab.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190325 | |
SUMMARY:Enrollment appointment times for Summer term assigned to students this week | |
TRANSP:OPAQUE | |
UID:06dfd8c2-c562-4667-8d6b-0c5b418177c7@06df.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190512 | |
SUMMARY:Official degree conferral date on diploma for students graduating at the end of Spring term 2019 | |
TRANSP:OPAQUE | |
UID:59bcdab6-ed22-4434-b13b-30f33cbfeb41@59bc.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190503 | |
SUMMARY:Last Spring 2019 class day | |
TRANSP:OPAQUE | |
UID:f4e94327-bbb9-490e-b8e5-b1732ed689e5@f4e9.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181102 | |
SUMMARY:Deadline for students to add a Fall term class with department permission (after: need academic dean approval) | |
TRANSP:OPAQUE | |
UID:15bd823c-0945-4fc9-8b2c-178d48fd032f@15bd.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180904 | |
SUMMARY:Deadline for students to cancel Fall enrollment and have no Fall term record on transcript | |
TRANSP:OPAQUE | |
UID:3a7b3043-1822-4750-816f-5a371501b2a7@3a7b.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190201 | |
SUMMARY:Deadline for students to drop a Spring term class and receive 100% tuition adjustment | |
TRANSP:OPAQUE | |
UID:a639b807-6358-4c53-aba1-9742436aaab2@a639.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190215 | |
SUMMARY:Deadline for students to drop a Spring term class and receive 50% tuition adjustment | |
TRANSP:OPAQUE | |
UID:25288b4e-a29c-4c9d-9a3e-90dc28f2d970@2528.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190329 | |
SUMMARY:Deadline for Graduate students to request pass/fail or credit/audit options for a Spring term class | |
TRANSP:OPAQUE | |
UID:8b1bdac3-f322-4650-8ea1-00e36072ac02@8b1b.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180928 | |
SUMMARY:Deadline for students to drop a Fall term class and receive 50% tuition adjustment | |
TRANSP:OPAQUE | |
UID:6c81beac-3395-43d1-a3e6-80687c64d1cc@6c81.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190401 | |
SUMMARY:Students begin enrolling for Summer term classes according to their appointment times | |
TRANSP:OPAQUE | |
UID:8586a5c4-4079-4081-ba10-86d16faf1683@8586.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181223 | |
SUMMARY:Official degree conferral date on diploma for students graduating at the end of Fall term 2018 | |
TRANSP:OPAQUE | |
UID:8e38096d-5408-4899-bcd6-1a19d453c29c@8e38.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180914 | |
SUMMARY:Deadline for students to begin initial Fall enrollment (after: $50 late fee\, need dept. & academic dean permission) | |
TRANSP:OPAQUE | |
UID:6d8e354a-8ea0-4022-9509-87dafb42a726@6d8e.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190215 | |
SUMMARY:Deadline for students (except Graduate) to change variable credits (after: need instructor permission & dean approval) | |
TRANSP:OPAQUE | |
UID:d683bef3-fa8c-4b49-b90b-03151d60e7ab@d683.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181212 | |
SUMMARY:Deadline for Graduate students to withdraw from the Fall term | |
TRANSP:OPAQUE | |
UID:a700bfcd-a943-4ffb-9a12-8b67b8c1de14@a700.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181102 | |
SUMMARY:Deadline for Graduate students to drop a Fall term class (after: need instructor\, advisor\, & academic dean approval) | |
TRANSP:OPAQUE | |
UID:fda723fe-91dd-4ccd-bd8e-8c6466eb5561@fda7.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190125 | |
SUMMARY:Deadline for students (except Special and Guest) to begin initial Spring term enrollment without $50 late fee | |
TRANSP:OPAQUE | |
UID:729b2982-146e-4c86-b9e3-2b34f0e1b620@729b.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181123 | |
SUMMARY:Deadline for students to change Honors Optional class status (after: need instructor permission & academic dean approval) | |
TRANSP:OPAQUE | |
UID:a980acff-8351-48a7-b7f7-3bc33852fbf7@a980.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190503 | |
SUMMARY:Deadline for Graduate students to withdraw from the Spring term | |
TRANSP:OPAQUE | |
UID:ef9bce29-f8a5-46c7-a8a7-5ec07723a6cf@ef9b.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180914 | |
SUMMARY:Deadline for students to drop a Fall term class and receive 100% tuition adjustment | |
TRANSP:OPAQUE | |
UID:38aacc15-8dfe-4936-99aa-5505556b98e0@38aa.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190121 | |
SUMMARY:Deadline for students to cancel Spring enrollment and have no Spring term record on transcript | |
TRANSP:OPAQUE | |
UID:3e776949-ebf7-4a58-b6ff-9156f0e3a72c@3e77.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181102 | |
SUMMARY:Deadline for Graduate students to change variable credits (after: need instructor permission & dean approval) | |
TRANSP:OPAQUE | |
UID:153363cc-2430-4dc9-8d31-b4c91c270913@1533.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190401 | |
SUMMARY:Enrollment appointment times for Fall term assigned to students this week | |
TRANSP:OPAQUE | |
UID:430d4e22-1fc9-49cf-bdf7-f46eb78a8973@430d.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180907 | |
SUMMARY:Deadline for students (except Special and Guest) to begin initial Fall term enrollment without $50 late fee | |
TRANSP:OPAQUE | |
UID:7e74e85a-8ca5-4c75-aa04-787fd2fab704@7e74.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181226 | |
SUMMARY:Deadline for instructors to submit Fall term final grades by 11:59 pm | |
TRANSP:OPAQUE | |
UID:e6806be5-c16a-4a55-bbb0-d362430ed981@e680.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190329 | |
SUMMARY:Deadline for Graduate students to drop a Spring term class (after: need instructor\, advisor\, & academic dean approval) | |
TRANSP:OPAQUE | |
UID:64913c59-045a-4898-9e86-5469fa59a9eb@6491.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181123 | |
SUMMARY:Deadline for students (except Graduate) to withdraw from Fall term | |
TRANSP:OPAQUE | |
UID:319d6e9a-67ef-4e0a-aa38-93333dd3e77e@319d.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190329 | |
SUMMARY:Deadline for students (except Graduate) to drop a Spring term class (after: need academic dean approval) | |
TRANSP:OPAQUE | |
UID:af4a7339-212c-4a38-a215-63f8ead1652e@af4a.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190329 | |
SUMMARY:Deadline for Graduate students to change variable credits (after: need instructor permission & dean approval) | |
TRANSP:OPAQUE | |
UID:e497b7fc-0b06-42c8-99a3-c7e60f81ba39@e497.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180928 | |
SUMMARY:Deadline for students (except Graduate) to change variable credits (after: need instructor permission & dean approval) | |
TRANSP:OPAQUE | |
UID:29d78f13-a072-450f-bf31-c47bb8f8cf47@29d7.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190419 | |
SUMMARY:Deadline for students (except Graduate) to withdraw from Spring term | |
TRANSP:OPAQUE | |
UID:1ae337ce-9bad-4530-8ef8-88beed0c695b@1ae3.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20180723 | |
SUMMARY:Preferred date for students enrolled in a class with an eText textbook to request opting out of purchase | |
TRANSP:OPAQUE | |
UID:9523cec0-44cf-4d42-93e2-4ac006a6dc33@9523.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190408 | |
SUMMARY:Students begin enrolling for Fall term classes according to their appointment times | |
TRANSP:OPAQUE | |
UID:bcf58362-f384-4126-91bd-c521f4a5e8b3@bcf5.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181105 | |
SUMMARY:Enrollment appointment times for Spring term assigned to students this week | |
TRANSP:OPAQUE | |
UID:348b508f-a080-4de7-8b2e-5bbabdfa6713@348b.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190201 | |
SUMMARY:Deadline for students to begin initial Spring enrollment (after: $50 late fee\, need dept. & academic dean permission) | |
TRANSP:OPAQUE | |
UID:9edf98ce-8de5-4246-bd0d-5f009bb25ef9@9edf.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181102 | |
SUMMARY:Deadline for students (except Graduate) to drop a Fall term class (after: need academic dean approval) | |
TRANSP:OPAQUE | |
UID:1996e4ab-c278-4ed9-9ca0-ddacc8b2a760@1996.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20181102 | |
SUMMARY:Deadline for Graduate students to request pass/fail or credit/audit options for a Fall term class | |
TRANSP:OPAQUE | |
UID:d5cf1343-0def-4c05-b37f-d6e11f64e11d@d5cf.org | |
END:VEVENT | |
BEGIN:VEVENT | |
DTSTAMP:20181221T092322Z | |
DTSTART;VALUE=DATE:20190419 | |
SUMMARY:Deadline for students to change Honors Optional class status (after: need instructor permission & academic dean approval) | |
TRANSP:OPAQUE | |
UID:25e9a641-0390-4a60-9967-34a0b19d9138@25e9.org | |
END:VEVENT | |
END:VCALENDAR |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment