diff options
| -rw-r--r-- | management/commands/_private.py | 12 | 
1 files changed, 11 insertions, 1 deletions
| diff --git a/management/commands/_private.py b/management/commands/_private.py index 23083e1..8f195a1 100644 --- a/management/commands/_private.py +++ b/management/commands/_private.py @@ -169,8 +169,18 @@ def get_update_date(soup):      return timezone.make_aware(date)  def get_weeks(soup): +    # Les semaines sont référencées de manière assez… exotique +    # En gros, il y a une liste d’éléments span qui contiennent une sorte d’ID +    # de la semaine, formaté de la manière suivante : +    # NNNNNNNNNNNNNNNNNNNYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +    # Tous sont de la même longueur, contiennent 51 N et un seul Y. +    # Allez savoir pourquoi. Il se trouve dans la balise « alleventweeks ». +    # Un paramètre du span (« date ») représente la date de début. +    # Un cours contient donc un ID de semaine, puis le nombre de jours après le +    # début de cette semaine.      weeks = {} -    for span in soup.find_all("span"): +    for span in soup.find_all("span"): # Liste de toutes les semaines définies +        # On parse la date et on la fait correspondre à l’ID          weeks[span.alleventweeks.text] = timezone.make_aware(              datetime.datetime.strptime(span["date"], "%d/%m/%Y")) | 
