diff --git a/handlers/handler.py b/handlers/handler.py index ecb7ccd..dc2756a 100644 --- a/handlers/handler.py +++ b/handlers/handler.py @@ -1,6 +1,8 @@ import pandas as pd from schema.pydantic import settings, Translit import os + + class BaseHandler: def __init__(self, file_path:str): @@ -15,25 +17,26 @@ class BaseHandler: except Exception as e: raise Exception(f"⚠️ Ошибка при получении структуры {self.file_path}: {e}") - def read(self): + def read(self, xls, sheet_name): try: - return pd.read_excel(self.file_path) + return pd.read_excel(xls, sheet_name) except Exception as e: raise Exception(f"⚠️ Ошибка при чтении файла {self.file_path}: {e}") + class Handler(BaseHandler): def __init__(self,file_path:str, columns:dict, sheet_name:str): super().__init__(file_path) - self.xls = self.struct() + xls = self.struct() - if sheet_name not in self.xls.sheet_names: + if sheet_name not in xls.sheet_names: raise Exception(f'⚠️ Лист {sheet_name} не найден') - self.df = pd.read_excel(self.xls, sheet_name=sheet_name) + self.df = self.read(xls, sheet_name=sheet_name) self.df = self.df.iloc[:, list(columns.values())] self.df.columns = list(columns.keys())