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

43 lines
946 B
Python
Raw Normal View History

"""
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