From ad19744a4702afad346a63b22b5d992565b3a345 Mon Sep 17 00:00:00 2001 From: Colin Maudry Date: Tue, 3 Jun 2025 13:55:04 +0200 Subject: [PATCH] Lecture du parquet comme simple df #9 --- src/pages/home.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/src/pages/home.py b/src/pages/home.py index 00ed52a..fae069d 100644 --- a/src/pages/home.py +++ b/src/pages/home.py @@ -1,12 +1,35 @@ +from time import sleep + +from narwhals.exceptions import ComputeError from dash import html, dcc, dash_table, register_page, Input, Output, State, callback from dotenv import load_dotenv import os import polars as pl +from polars.exceptions import ComputeError from src.utils import split_filter_part, add_annuaire_link +import logging + +logger = logging.getLogger("decp.info") +logging.basicConfig( + format="%(asctime)s %(levelname)-8s %(message)s", + level=logging.INFO, + datefmt="%Y-%m-%d %H:%M:%S", +) load_dotenv() -df: pl.LazyFrame = pl.scan_parquet(os.getenv("DATA_FILE_PARQUET_PATH")) +try: + logger.info( + f"Lecture du fichier parquet ({os.getenv('DATA_FILE_PARQUET_PATH')})..." + ) + df: pl.DataFrame = pl.read_parquet(os.getenv("DATA_FILE_PARQUET_PATH")) +except ComputeError: + # Le fichier est probablement en cours de mise à jour + logger.info("Échec, nouvelle tentative dans 10s...") + sleep(seconds=10) + df: pl.DataFrame = pl.read_parquet(os.getenv("DATA_FILE_PARQUET_PATH")) + +df: pl.LazyFrame = df.lazy() # Ajout des liens vers l'annuaire df = add_annuaire_link(df)