Récupération ical

Bonjour à tous,
J ai récupérer mes rendez-vous Google agenda mais je voudrais qu’il m’affiche que les rendez-vous à venir et pas ceux déjà passés, et je voudrais pouvoir choisir d’afficher que que 3 ou quatre exct... rendez-vous,
Pourriez vous m’aiguiller SVP
Merci
from ics import Calendar
import requests
import locale

locale.setlocale(locale.LC_ALL, 'fr_FR')
# Parse the URL
url = "https://calendar.google.com/xxxxxxxxxxxxxxxxxxxxx.ics"

cal = Calendar(requests.get(url).text)
for evt in cal.events:
    print(evt.name, evt.begin.date().strftime('%a %d %b %Y'))


Configuration: Configuration: Windows / Chrome 102.0.0.0

4 réponses

  1. Modérateur
    Bonjour,

    Visiblement, tu disposes de la date ( evt.begin.date() )
    Il te suffit donc de faire un IF avec la date actuelle pour ne faire le print que si elle est supérieur ...
    Et pour la limite.. un simple "compteur" et un IF ... là aussi feront l'affaire.
    1. Bonjour,
      from ics import Calendar
      import requests
      import locale

      locale.setlocale(locale.LC_ALL, 'fr_FR')
      # Parse the URL
      url = "https://calendar.google.com/xxxxxxxxxxxxxxxxxxxxx.ics"

      start = datetime.now()
      end = start + timedelta(days=60)
      cal = Calendar(requests.get(url).text)
      entree = [3]
      for evt in cal.events:
      if evt.begin >= start:
      print(evt.name, evt.begin.date().strftime('%a %d %b %Y'))
      j'ai essayé sa mais sa marche pas, je suis débutant comme tu peut le voir.
      1. Modérateur
        Pour la comparaison.. il faut utiliser la date
         evt.begin.date()
    2. Merci, mais sa marche pas non plus.
      if evt.begin.date() >= start:
      TypeError: can't compare datetime.datetime to datetime.date