read fix
This commit is contained in:
@@ -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())
|
||||
|
||||
|
||||
Reference in New Issue
Block a user