Purge_Registres_D-c-s_INSEE/purge-registres-deces-insee/excel_in.py

43 lines
946 B
Python

"""
Copyright (c) 2020 Sdj Geek
Voir le fichier LICENSE
Classe d'accès aux données du site de l'Église
"""
import os
import pandas as pd
from membre_base import MembreBase, MembreProvider
class ExcelIn(MembreProvider):
def __init__(self, excel_path):
self.excel_path = excel_path
self.dataframe = None
def __len__(self):
return len(self.dataframe)
class Member(MembreBase):
def __init__(self, provider, row):
super().__init__(provider)
def get_name(self):
return os.path.basename(self.excel_path)
def load(self):
self.dataframe = pd.read_excel(self.excel_path)
return len(self.dataframe)
def get_member_list(self):
for index, row in self.dataframe.iterrows():
try:
yield self.Member(self, row)
except ValueError:
print(f"Error with member [{row}]")
continue