aboutsummaryrefslogtreecommitdiff
path: root/management
diff options
context:
space:
mode:
Diffstat (limited to 'management')
-rw-r--r--management/commands/_private.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/management/commands/_private.py b/management/commands/_private.py
index c31eb34..f7f8435 100644
--- a/management/commands/_private.py
+++ b/management/commands/_private.py
@@ -21,6 +21,8 @@ from edt.models import Group, Room, Course
from edt.utils import get_week
import datetime
+import re
+
import requests
@@ -122,6 +124,29 @@ def get_events(timetable, year, week, soup, weeks_in_soup):
yield title, type_, groups, rooms, notes, begin, end
+def get_update_date(soup):
+ # Explication de la regex
+ #
+ # (\d+)/(\d+)/(\d+)\s+(\d+):(\d+):(\d+)
+ # (\d+) au moins un nombre
+ # / un slash
+ # (\d+) au moins un nombre
+ # / un slash
+ # (\d+) au moins un nombre
+ # \s+ au moins un espace
+ # (\d+) au moins un nombre
+ # : un deux-points
+ # (\d+) au moins un nombre
+ # : un deux-points
+ # (\d+) au moins un nombre
+ datetime_regex = re.compile("(\d+)/(\d+)/(\d+)\s+(\d+):(\d+):(\d+)")
+ search = datetime_regex.search(soup.footer.text)
+ if search is None:
+ return None
+
+ day, month, year, hour, minute, second = [int(v) for v in search.groups()]
+ return datetime.datetime(year, month, day, hour, minute, second)
+
def get_weeks(soup):
weeks = {}
for span in soup.find_all("span"):