Un parser ultra-robuste et intelligent pour convertir les fichiers Excel de Renewgy en format CSV standardisé. Solution enterprise avec détection automatique avancée, gestion complÚte des EAN bi-horaires et interface moderne conçue pour l'efficacité, la simplicité d'utilisation et l'intégration transparente dans des workflows de traitement de données.
- đ§ Intelligence automatique : DĂ©tection dynamique des colonnes, structure et format des fichiers Excel
- ⥠Gestion EAN bi-horaires : Support automatique des tarifs peak/off-peak avec génération de fichiers séparés
- đŻ SĂ©lection du type de puissance : Choix entre consommation active, inductive ou capacitive
- đ Noms de fichiers intelligents : GĂ©nĂ©ration automatique avec suffixes (
_active
,_inductive
,_capacitive
,_peak
,_offpeak
) - đ Workflow universel simplifiĂ© : Dossiers d'entrĂ©e et de sortie fixes (
excel_files/
âcsv_files/
) - đ CompatibilitĂ© multiplateforme : Fonctionne sur macOS, Linux et Windows
- đ Launchers intelligents : Automatisation complĂšte de l'installation et du dĂ©ploiement
- đ» Interface web moderne : Design ergonomique avec feedback en temps rĂ©el
- đŠ Traitement par lots intelligent : Personnalisation individuelle par fichier (nom, date, feuille, type de puissance)
- đ§ Double mode d'utilisation : Interface web conviviale ou CLI pour l'automatisation
- âïž Configuration zĂ©ro : Workflow entiĂšrement automatisĂ© avec dĂ©tection intelligente
- đĄïž Robustesse enterprise : Validation rigoureuse, gestion d'erreurs et logging professionnel
- đł PrĂȘt pour la production : Support Docker avec launcher automatique
- Types supportés : Active, Inductive (réactive), Capacitive (réactive)
- Détection automatique : Reconnaissance des colonnes de puissance dans les fichiers Excel
- Noms de fichiers automatiques : Suffixes
_active
,_inductive
,_capacitive
pour éviter l'écrasement - Interface utilisateur : Sélection dynamique avec mise à jour automatique du nom de fichier
- Détection automatique : Reconnaissance des EAN avec tarification peak/off-peak
- Configuration flexible : RĂšgles horaires personnalisables via
ean_config.json
- Génération de fichiers séparés : Automatiquement
_peak.csv
et_offpeak.csv
- RÚgles horaires par défaut :
- Peak : 07h00-22h00 (lundi-vendredi uniquement)
- Off-peak : 22h00-07h00 (lundi-vendredi) + tout le weekend
- Structure dynamique : DĂ©tection automatique des en-tĂȘtes et dĂ©but des donnĂ©es
- Colonnes flexibles : Reconnaissance automatique des colonnes timestamp et valeurs
- Validation robuste : Vérification de l'intégrité des données et de la structure
- Formats multiples : Support de diverses structures de fichiers Excel Renewgy
- Conversion Excel vers CSV : Traitement automatique avec validation complĂšte
- Filtrage par date personnalisable : Traitement des données à partir d'une date spécifique
- Sélection de feuille : Configuration de l'index de feuille Excel à traiter
- Mapping EAN configurable : Support des fichiers de configuration externes sécurisés
- Logging multi-niveaux : Verbose, normal, quiet selon vos besoins
- Interface responsive : Fonctionne sur desktop, tablette et mobile
- Mode single et batch : Traitement d'un fichier ou par lots
- Personnalisation en temps réel : Options par fichier avec prévisualisation
- Feedback instantané : Messages d'état et indicateurs de progression
- Gestion d'erreurs intelligente : Rapports détaillés avec solutions suggérées
- Python 3.10+ (recommandé : 3.11 ou plus récent)
- Dépendances Python :
pandas
,openpyxl
,flask
(installées automatiquement) - Fichier de configuration EAN obligatoire (voir Configuration)
pandas>=1.5.0
openpyxl>=3.0.0
flask>=2.0.0
Les launchers gĂšrent automatiquement l'installation complĂšte et le lancement sur macOS, Linux et Windows :
-
Clonez le projet :
git clone https://github.com/BricePetit/RenewgyParser.git cd RenewgyParser
-
Créez votre fichier de configuration EAN (voir Configuration)
-
Lancez directement selon votre plateforme :
macOS / Linux :
# Interface web avec Docker (recommandé).
./launcher_docker.sh
# Interface web locale avec environnement virtuel Python.
./launcher_python.sh
Windows :
REM Interface web avec Docker (recommandé).
launcher_docker.bat
REM Interface web locale avec environnement virtuel Python.
launcher_python.bat
Les launchers s'occupent automatiquement de :
- Vérification et installation des dépendances
- Configuration d'environnement (virtuel Python ou Docker)
- Création des dossiers requis
- Validation de la configuration
- Démarrage de l'interface web
Pour un contrÎle manuel ou l'intégration dans des workflows existants :
pip install -r requirements.txt
python renewgy_parser_gui.py
# Construction de l'image.
docker build -t renewgy-parser .
# Lancement.
docker-compose up renewgy-web-interface
Important : Un fichier de configuration EAN est obligatoire pour toutes les opérations.
Architecture simplifiée avec dossiers prédéfinis :
- Dossier d'entrée :
excel_files/
- Dossier de sortie :
csv_files/
- Workflow : DĂ©posez vos fichiers Excel â Traitez via l'interface â RĂ©cupĂ©rez les CSV
macOS / Linux :
# Docker (recommandé) - Configuration automatique complÚte.
./launcher_docker.sh
# Python local - Environnement virtuel automatique.
./launcher_python.sh
Windows :
REM Docker (recommandé) - Configuration automatique complÚte.
launcher_docker.bat
REM Python local - Environnement virtuel automatique.
launcher_python.bat
Interface accessible sur http://localhost:5001
Local :
python renewgy_parser_gui.py
Docker :
# Avec Docker Compose (Simple).
docker-compose up renewgy-web-interface
# Avec Docker directement.
docker run -it --rm -p 5001:5000 \
-v "$(pwd)/excel_files:/renewgy/excel_files" \
-v "$(pwd)/csv_files:/renewgy/csv_files" \
-v "$(pwd)/ean_config.json:/renewgy/ean_config.json" \
renewgy-parser
Mode Single (Fichier unique) :
- Sélection de fichier : Choix parmi les fichiers disponibles dans
excel_files/
- Type de puissance : Sélection entre Active, Inductive ou Capacitive
- Nom de sortie intelligent : Génération automatique avec suffixe selon le type (
_active
,_inductive
,_capacitive
) - EAN bi-horaires : Génération automatique de deux fichiers
_peak.csv
et_offpeak.csv
- Filtrage par date : Traitement à partir d'une date spécifique
- Configuration de feuille : Sélection de l'index de feuille Excel
- Options avancées : AccÚs complet aux paramÚtres de configuration
Mode Batch (Traitement par lots) :
- Traitement multiple : Affichage et traitement de tous les fichiers Excel
- Personnalisation individuelle :
- Type de puissance : Choix par fichier avec mise Ă jour du nom
- Nom de sortie : Génération automatique avec suffixes intelligents
- Date de début : Filtrage personnalisé par fichier
- Index de feuille : Configuration spécifique par fichier
- Gestion EAN bi-horaires : Traitement automatique avec fichiers séparés
- Traitement simultané : Processus unifié pour tous les fichiers sélectionnés
Fonctionnalités communes :
- Monitoring en temps réel : Suivi détaillé du traitement
- Interface responsive : Compatible desktop, tablette et mobile
- Feedback instantané : Messages d'état et indicateurs de progression
- Gestion d'erreurs : Rapports détaillés avec solutions suggérées
Pour l'intégration dans des scripts ou l'automatisation avancée. Toutes les nouvelles fonctionnalités sont disponibles via CLI.
# Traitement basique avec type de puissance active (défaut).
python renewgy_parser.py --input input.xlsx --output output.csv --config ean_config.json
# Sélection du type de puissance (active, inductive, capacitive).
python renewgy_parser.py --input input.xlsx --output output.csv --config ean_config.json --power-type inductive
# Le nom de fichier sera automatiquement suffixé : output_inductive.csv
# Pour les EAN bi-horaires : output_inductive_peak.csv et output_inductive_offpeak.csv
# Avec filtrage par date.
python renewgy_parser.py --input input.xlsx --output output.csv --config ean_config.json --start-date 2023-01-01 --power-type capacitive
# Avec logging verbose.
python renewgy_parser.py --input input.xlsx --output output.csv --config ean_config.json --verbose --power-type active
# Traitement de tous les fichiers Excel avec type de puissance par défaut.
python renewgy_parser.py --batch-input ./excel_files --batch-output ./csv_files --config ean_config.json
# Avec type de puissance spécifique pour tous les fichiers.
python renewgy_parser.py --batch-input ./excel_files --batch-output ./csv_files --config ean_config.json --power-type inductive
# Avec filtrage par date.
python renewgy_parser.py --batch-input ./excel_files --batch-output ./csv_files --config ean_config.json --start-date 2023-06-01 --power-type capacitive
# Avec pattern personnalisé.
python renewgy_parser.py --batch-input ./excel_files --batch-output ./csv_files --config ean_config.json --pattern "*specific*" --power-type active
# Type de puissance avec fichier de configuration EAN personnalisé.
python renewgy_parser.py --input input.xlsx --output output.csv --config mon_config.json --power-type inductive
# Spécification de l'index de la feuille Excel avec type de puissance.
python renewgy_parser.py --input input.xlsx --output output.csv --config ean_config.json --sheet-index 0 --power-type capacitive
# Combinaison de plusieurs options avec nouvelles fonctionnalités.
python renewgy_parser.py --input input.xlsx --output output.csv --config ean_config.json --sheet-index 1 --start-date 2023-01-01 --power-type active --verbose
# Fichier standard avec puissance active.
# Input: data.xlsx â Output: data_active.csv
python renewgy_parser.py --input data.xlsx --output data.csv --config ean_config.json --power-type active
# EAN bi-horaire avec puissance inductive.
# Input: ean_bihoraire.xlsx â Output: ean_bihoraire_inductive_peak.csv + ean_bihoraire_inductive_offpeak.csv
python renewgy_parser.py --input ean_bihoraire.xlsx --output ean_bihoraire.csv --config ean_config.json --power-type inductive
# Traitement par lots avec suffixes automatiques.
# Tous les fichiers auront le suffixe _capacitive, et les EAN bi-horaires auront _peak/_offpeak en plus
python renewgy_parser.py --batch-input ./excel_files --batch-output ./csv_files --config ean_config.json --power-type capacitive
python renewgy_parser.py --help
Argument | Description | Obligatoire | Valeurs possibles |
---|---|---|---|
--input |
Fichier Excel d'entrée | Oui (mode fichier unique) | Chemin vers fichier .xlsx |
--output |
Fichier CSV de sortie | Oui (mode fichier unique) | Chemin vers fichier .csv |
--batch-input |
Dossier d'entrée pour le traitement par lots | Oui (mode batch) | Chemin vers dossier |
--batch-output |
Dossier de sortie pour le traitement par lots | Oui (mode batch) | Chemin vers dossier |
--config |
Fichier de configuration EAN | Toujours obligatoire | Chemin vers fichier .json |
--power-type |
Type de puissance à traiter | Non | active , inductive , capacitive (défaut: active ) |
--sheet-index |
Index de la feuille Excel | Non | Entier (défaut: 2) |
--pattern |
Pattern de fichiers pour le mode batch | Non | Pattern glob (ex: *specific* ) |
--start-date |
Date de début au format YYYY-MM-DD | Non | Date ISO (ex: 2023-01-01 ) |
--verbose |
Affichage détaillé | Non | Flag (pas de valeur) |
--quiet |
Affichage minimal | Non | Flag (pas de valeur) |
Nouvelles fonctionnalités :
--power-type
: Définit le type de puissance et génÚre automatiquement le suffixe approprié- Gestion EAN bi-horaires : Détection automatique, génération de fichiers
_peak
et_offpeak
- Noms intelligents : Suffixe automatique selon le type de puissance pour éviter l'écrasement
Important : Un fichier de configuration EAN est obligatoire pour utiliser ce parser. Aucun mapping par défaut n'est inclus pour des raisons de sécurité.
Ătape obligatoire : CrĂ©ez un fichier ean_config.json
dans le répertoire racine :
{
"example_ean_standard": {
"source_id": "123456",
"variable_id": "789012",
"description": "Example standard EAN mapping"
},
"example_ean_bihoraire_peak": {
"source_id": "987654",
"variable_id": "321098",
"description": "Example bi-hourly EAN mapping (peak hours)"
},
"example_ean_bihoraire_offpeak": {
"source_id": "987654",
"variable_id": "321099",
"description": "Example bi-hourly EAN mapping (off-peak hours)"
}
}
Nouvelles fonctionnalités de configuration :
is_bihoraire
: Définit si l'EAN utilise la tarification bi-horaire (peak/off-peak)peak_hours
: Configuration des heures de pointe par jour de la semaine (optionnel)- Génération automatique : Si
is_bihoraire: true
, génÚre automatiquement deux fichiers CSV - Heures par défaut : Si
peak_hours
n'est pas spécifié, utilise les rÚgles standard belges
RÚgles horaires par défaut pour les EAN bi-horaires :
- Peak : 07h00-22h00 (lundi-vendredi uniquement)
- Off-peak : 22h00-07h00 (lundi-vendredi) + tout le weekend (samedi et dimanche complets)
Sécurité : Ne jamais committer ce fichier dans votre repository. Il est automatiquement ignoré par .gitignore
.
Aide : Un fichier exemple ean_config.example.json
est fourni pour vous aider à créer votre configuration.
Le parser utilise une configuration par dĂ©faut qui peut ĂȘtre ajustĂ©e :
- sheet_index : Index de la feuille Excel (défaut: 2)
- header_row : Ligne contenant l'en-tĂȘte EAN (dĂ©faut: 0)
- header_col : Colonne contenant l'en-tĂȘte EAN (dĂ©faut: 1)
- data_start_row : PremiÚre ligne des données (défaut: 5)
- timestamp_col : Colonne des timestamps (défaut: 0)
- value_col : Colonne des valeurs (défaut: 2)
- min_rows : Nombre de lignes minimales pour parser (défaut: 6)
- min_cols : Nombre de colonnes minimales pour parser (défaut: 3)
- start_date : Date de départ (Optionnel: 2025-01-01)
Le parser génÚre automatiquement des noms de fichiers intelligents selon le contexte :
- Puissance active :
fichier_active.csv
- Puissance inductive :
fichier_inductive.csv
- Puissance capacitive :
fichier_capacitive.csv
- Puissance active :
fichier_active_peak.csv
+fichier_active_offpeak.csv
- Puissance inductive :
fichier_inductive_peak.csv
+fichier_inductive_offpeak.csv
- Puissance capacitive :
fichier_capacitive_peak.csv
+fichier_capacitive_offpeak.csv
Le fichier CSV généré contient les colonnes suivantes :
Colonne | Description |
---|---|
date |
Timestamp de la mesure |
value |
Valeur mesurée (selon le type de puissance sélectionné) |
meternumber |
Numéro EAN du compteur |
source_id |
Identifiant source du mapping |
source_serialnumber |
Numéro de série (vide par défaut) |
source_ean |
EAN source (vide par défaut) |
source_name |
Nom source (vide par défaut) |
mapping_config |
Configuration mapping (vide par défaut) |
variable_id |
Identifiant variable du mapping |
EAN standard (puissance active) :
date,value,meternumber,source_id,source_serialnumber,source_ean,source_name,mapping_config,variable_id
2023-01-01 00:00:00,1.25,541448965000143475,123456,,,,,789012
2023-01-01 00:15:00,1.30,541448965000143475,123456,,,,,789012
EAN bi-horaire (puissance inductive, fichier peak) :
date,value,meternumber,source_id,source_serialnumber,source_ean,source_name,mapping_config,variable_id
2023-01-01 07:00:00,0.85,987654321000000123,987654,,,,,321098
2023-01-01 07:15:00,0.92,987654321000000123,987654,,,,,321098
RenewgyParser/
âââ csv_files/ # Dossier de sortie (fixe).
â âââ .gitignore # Fichiers Ă ignorer par Git.
âââ excel_files/ # Dossier d'entrĂ©e (fixe).
â âââ .gitignore # Fichiers Ă ignorer par Git.
âââ templates/
â âââ index.html # Template web interface.
âââ .gitignore # Fichiers Ă ignorer par Git.
âââ docker-compose.yml # Services Docker.
âââ Dockerfile # Configuration Docker.
âââ ean_config.example.json # Exemple de configuration EAN.
âââ ean_config.json # Configuration EAN (Ă crĂ©er).
âââ launcher_docker.bat # Launcher Docker (Windows).
âââ launcher_docker.sh # Launcher Docker (macOS/Linux).
âââ launcher_python.bat # Launcher Python (Windows).
âââ launcher_python.sh # Launcher Python (macOS/Linux).
âââ LICENSE # Licence du projet.
âââ README.md # Cette documentation.
âââ renewgy_parser.py # Parser CLI principal.
âââ renewgy_parser_gui.py # Interface web Flask.
âââ requirements.txt # DĂ©pendances Python.
python renewgy_parser.py --input data.xlsx --output output.csv --config ean_config.json --power-type active
# Résultat : output_active.csv (ou output_active_peak.csv + output_active_offpeak.csv si EAN bi-horaire)
python renewgy_parser.py --input data.xlsx --output output.csv --config ean_config.json --power-type inductive --start-date 2023-01-01
# Résultat : output_inductive.csv avec données à partir du 1er janvier 2023
python renewgy_parser.py --batch-input ./excel_files --batch-output ./csv_files --config ./ean_config.json --power-type capacitive --start-date 2023-06-01 --verbose
# Résultat : Tous les fichiers Excel traités avec suffixe _capacitive
python renewgy_parser.py --input ean_bihoraire.xlsx --output ean_bihoraire.csv --config ean_config.json --power-type inductive
# Résultat automatique :
# - ean_bihoraire_inductive_peak.csv (données heures pleines)
# - ean_bihoraire_inductive_offpeak.csv (données heures creuses)
# Lancement automatique avec configuration complĂšte
./launcher_docker.sh
# Ou manuellement
docker run --rm -v $(pwd)/excel_files:/renewgy/excel_files -v $(pwd)/csv_files:/renewgy/csv_files -v $(pwd)/ean_config.json:/renewgy/ean_config.json -p 5001:5000 renewgy-parser
# Interface accessible sur http://localhost:5001
# Script de traitement quotidien avec toutes les nouvelles fonctionnalités
python renewgy_parser.py \
--batch-input /data/excel_files \
--batch-output /data/csv_files \
--config /config/ean_config.json \
--power-type active \
--start-date $(date -d "yesterday" +%Y-%m-%d) \
--verbose
# Traite automatiquement tous les nouveaux fichiers avec les données d'hier
-
Erreur "Config file not found"
- Vérifiez que
ean_config.json
existe et est accessible - Utilisez un chemin absolu si nécessaire
- Vérifiez que
-
Erreur "No valid Excel files found"
- Vérifiez que vos fichiers ont l'extension
.xlsx
ou.XLSX
- Placez vos fichiers dans le dossier
excel_files/
- Utilisez
--pattern
pour spécifier un pattern personnalisé
- Vérifiez que vos fichiers ont l'extension
-
Erreur "EAN not found in config"
- Ajoutez le mapping EAN manquant dans votre fichier de configuration
- Vérifiez l'orthographe exacte de l'EAN
- Pour les EAN bi-horaires, ajoutez
"is_bihoraire": true
dans la configuration
-
Erreur "Power type column not found"
- Vérifiez que le type de puissance sélectionné existe dans votre fichier Excel
- Les colonnes acceptées :
Active Energy
,Inductive Energy
,Capacitive Energy
- Utilisez
--verbose
pour voir les colonnes détectées
-
ProblĂšme avec les EAN bi-horaires
- Vérifiez la configuration
"is_bihoraire": true
dansean_config.json
- Les rÚgles horaires par défaut sont appliquées si
peak_hours
n'est pas spécifié - Deux fichiers sont générés automatiquement :
_peak.csv
et_offpeak.csv
- Vérifiez la configuration
-
Interface web ne démarre pas
- Vérifiez que le port 5001 n'est pas utilisé
- Utilisez les launchers automatiques selon votre plateforme :
- macOS/Linux :
./launcher_python.sh
ou./launcher_docker.sh
- Windows :
launcher_python.bat
oulauncher_docker.bat
- macOS/Linux :
-
Erreur "Port already in use" avec Docker
- Le port 5001 est configuré par défaut (au lieu de 5000 pour éviter les conflits avec AirPlay sur macOS)
- Si le port 5001 est occupé, modifiez le port dans
docker-compose.yml
- Puis accédez à http://localhost:5002
-
ProblĂšme d'environnement virtuel
- Le launcher Python gĂšre automatiquement l'environnement virtuel
- En cas de problĂšme, supprimez le dossier
renewgy_parser_venv/
et relancez :- macOS/Linux :
./launcher_python.sh
- Windows :
launcher_python.bat
- macOS/Linux :
-
Fichiers de sortie non générés
- Vérifiez les permissions d'écriture dans le dossier
csv_files/
- Pour les EAN bi-horaires, vérifiez que les données contiennent bien des heures de pointe et creuses
- Utilisez
--verbose
pour voir le détail du traitement
- Vérifiez les permissions d'écriture dans le dossier
-
Détection automatique échoue
- La dĂ©tection se base sur des mots-clĂ©s standard dans les en-tĂȘtes
- Si votre fichier Excel a une structure non-standard, contactez le support
- Utilisez
--verbose
pour voir les colonnes et structures détectées
macOS / Linux :
# Affichage détaillé avec les launchers.
./launcher_python.sh # Les logs sont automatiquement affichés.
./launcher_docker.sh # Les logs Docker sont affichés.
# Affichage détaillé en mode CLI.
python src/renewgy_parser.py --verbose --input file.xlsx --output file.csv --config ean_config.json
# Logs Docker manuels.
docker-compose logs renewgy-web-interface
Windows :
REM Affichage détaillé avec les launchers.
launcher_python.bat REM Les logs sont automatiquement affichés.
launcher_docker.bat REM Les logs Docker sont affichés.
REM Affichage détaillé en mode CLI.
python src/renewgy_parser.py --verbose --input file.xlsx --output file.csv --config ean_config.json
REM Logs Docker manuels.
docker-compose logs renewgy-web-interface
Le parser gĂšre plusieurs types d'erreurs :
- Fichiers manquants : Vérification de l'existence des fichiers d'entrée
- Structure Excel invalide : Validation de la structure attendue
- EAN non trouvé : Vérification de l'existence dans le mapping
- Données invalides : Validation des types de données
- Erreurs de format de date : Validation des dates d'entrée
Le parser utilise un systĂšme de logging configurable :
- INFO : Messages d'information (défaut)
- DEBUG : Messages détaillés (avec --verbose)
- ERROR : Erreurs uniquement (avec --quiet)
- WARNING : Avertissements
Format des logs :
2025-07-08 10:30:45 - renewgy_parser - INFO - Processing file: data.xlsx
2025-07-08 10:30:46 - renewgy_parser - INFO - Extracted EAN: 541448965000143475
2025-07-08 10:30:47 - renewgy_parser - INFO - Extracted 1000 data points
Une fonctionnalité clé du parser est la possibilité de filtrer les données par date de début :
# Traiter uniquement les données à partir du 1er janvier 2023.
python src/renewgy_parser.py --input input.xlsx --output output.csv --config ean_config.json --start-date 2023-01-01
Cette fonctionnalité est particuliÚrement utile pour :
- Ăviter de traiter des donnĂ©es dĂ©jĂ prĂ©sentes dans votre base de donnĂ©es
- Synchroniser les nouvelles données depuis la derniÚre mise à jour
- Optimiser les performances en ne traitant que les données nécessaires
Les contributions sont les bienvenues ! Voici comment contribuer :
- Fork le projet
- Créez une branche pour votre fonctionnalité (
git checkout -b feature/AmazingFeature
) - Commitez vos changements (
git commit -m 'Add some AmazingFeature'
) - Poussez vers la branche (
git push origin feature/AmazingFeature
) - Ouvrez une Pull Request
Ce projet est sous licence MIT. Voir le fichier LICENSE
pour plus de détails.
Important : Ne commitez jamais vos fichiers de configuration EAN ou vos données sensibles. Utilisez .gitignore
pour exclure :
# Fichiers de configuration sensibles
ean_config.json
config/
*.env
# Données
excel_files/
csv_files/
*.xlsx
*.csv
# Environnement virtuel Python
renewgy_parser_venv/
Pour toute question ou problĂšme :
- Consultez cette documentation
- Vérifiez les problÚmes courants
- Ouvrez une issue sur GitHub
đ Nouvelles fonctionnalitĂ©s majeures :
- đŻ SĂ©lection du type de puissance : Choix entre Active, Inductive et Capacitive
- ⥠Gestion complÚte des EAN bi-horaires : Support automatique peak/off-peak avec fichiers séparés
- đ§ DĂ©tection automatique intelligente : Colonnes, structure et format dĂ©tectĂ©s dynamiquement
- đ Noms de fichiers intelligents : Suffixes automatiques selon le type de puissance et le mode horaire
- đ Interface web amĂ©liorĂ©e : SĂ©lection dynamique avec feedback en temps rĂ©el
đĄïž AmĂ©liorations de robustesse :
- DĂ©tection dynamique des en-tĂȘtes et dĂ©but des donnĂ©es
- Validation robuste de la structure des fichiers Excel
- Gestion d'erreurs avancée avec messages détaillés
- Logging professionnel avec niveaux configurables
đ» Interface utilisateur :
- Mode batch amélioré : Configuration individuelle par fichier
- Mise Ă jour automatique des noms lors du changement de type de puissance
- Feedback instantané pour toutes les opérations
- Interface responsive optimisée
đ§ Technique :
- Type hints complets et documentation professionnelle
- Code modulaire et maintenable
- Tests CLI et web validés pour tous les cas d'usage
- Configuration flexible pour les rÚgles horaires personnalisées
- Parser initial avec support Excel vers CSV
- Validation des données et gestion d'erreurs
- Support du filtrage par date
- Traitement par lots
- Configuration EAN externe
- Support Docker
- Interface web moderne
- Workflow universel simplifié
- Launchers automatiques Python et Docker
Brice Petit
Université Libre de Bruxelles (ULB)
Ce projet a été développé dans le cadre d'un projet de recherche PhD à l'Université Libre de Bruxelles (ULB).
- GitHub: BricePetit
- Projet: RenewgyParser