52 lines
No EOL
1.6 KiB
Python
52 lines
No EOL
1.6 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Script pour restaurer le fichier CSV à un format simple avec juste un commentaire en tête.
|
|
"""
|
|
|
|
import os
|
|
import sys
|
|
|
|
def fix_csv_file(csv_file_path):
|
|
"""
|
|
Restaure le fichier CSV à un format simple avec juste un commentaire en tête.
|
|
"""
|
|
if not os.path.exists(csv_file_path):
|
|
print(f"Erreur: Le fichier {csv_file_path} n'existe pas.")
|
|
return False
|
|
|
|
# Lire le contenu actuel du fichier
|
|
with open(csv_file_path, 'r') as f:
|
|
content = f.read()
|
|
|
|
# Extraire les lignes de données (ignorer les lignes de commentaire et le script Python)
|
|
lines = content.split('\n')
|
|
data_lines = []
|
|
for line in lines:
|
|
# Conserver uniquement les lignes qui contiennent des données CSV (celles avec des points-virgules)
|
|
if ';' in line and not line.startswith('#'):
|
|
data_lines.append(line)
|
|
|
|
# Réécrire le fichier avec juste un commentaire simple en tête
|
|
with open(csv_file_path, 'w') as f:
|
|
f.write('# Ce fichier est un CSV et ne doit pas être exécuté directement avec Python.\n')
|
|
f.write('# Utilisez view_suivi_livre.py pour visualiser ces données.\n')
|
|
for line in data_lines:
|
|
f.write(line + '\n')
|
|
|
|
print(f"Le fichier {csv_file_path} a été restauré à un format simple.")
|
|
return True
|
|
|
|
def main():
|
|
"""
|
|
Fonction principale.
|
|
"""
|
|
# Utiliser le fichier spécifié en argument ou par défaut 'suivi_livre.csv'
|
|
if len(sys.argv) > 1:
|
|
csv_file = sys.argv[1]
|
|
else:
|
|
csv_file = 'suivi_livre.csv'
|
|
|
|
fix_csv_file(csv_file)
|
|
|
|
if __name__ == "__main__":
|
|
main() |