From c5259bf13ad128a94d650d1bb74f5f764b1da1a3 Mon Sep 17 00:00:00 2001 From: skymike03 Date: Sun, 6 Jul 2025 20:58:31 +0200 Subject: [PATCH] Gestion d'erreur et cache simple dans network.py --- network.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/network.py b/network.py index d8fcb9b..f648359 100644 --- a/network.py +++ b/network.py @@ -15,7 +15,24 @@ import logging logger = logging.getLogger(__name__) JSON_EXTENSIONS = "/userdata/roms/ports/RGSX/rom_extensions.json" +cache = {} +CACHE_TTL = 3600 # 1 heure +def fetch_data(url): + """Récupère des données depuis une URL avec mise en cache.""" + current_time = time.time() + if url in cache and current_time - cache[url]["timestamp"] < CACHE_TTL: + return cache[url]["data"] + try: + response = requests.get(url) + response.raise_for_status() + data = response.json() + cache[url] = {"data": data, "timestamp": current_time} + return data + except requests.RequestException as e: + logging.error(f"Erreur lors de la requête {url} : {e}") + return None + def test_internet(): logger.debug("Test de connexion Internet") try: