This commit is contained in:
2026-05-07 02:16:48 +03:00
parent 8a33674275
commit f6ea373632

View File

@@ -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())