This commit is contained in:
12
utils/__init__.py
Normal file
12
utils/__init__.py
Normal file
@@ -0,0 +1,12 @@
|
||||
"""
|
||||
Утилиты приложения
|
||||
"""
|
||||
from .logger import setup_logger, logger
|
||||
from .helpers import create_folder, get_current_date_parts
|
||||
|
||||
__all__ = [
|
||||
'setup_logger',
|
||||
'logger',
|
||||
'create_folder',
|
||||
'get_current_date_parts'
|
||||
]
|
||||
25
utils/helpers.py
Normal file
25
utils/helpers.py
Normal file
@@ -0,0 +1,25 @@
|
||||
"""
|
||||
Общие вспомогательные функции
|
||||
"""
|
||||
from datetime import datetime as dt
|
||||
|
||||
|
||||
def create_folder(num: int) -> str:
|
||||
"""
|
||||
Форматирует номер дня/месяца для имени папки (добавляет ведущий ноль)
|
||||
"""
|
||||
if int(num) // 10 == 0:
|
||||
return f"0{num}"
|
||||
else:
|
||||
return str(num)
|
||||
|
||||
|
||||
def get_current_date_parts() -> tuple[str, str, str]:
|
||||
"""
|
||||
Возвращает текущую дату в формате (год, месяц, день) с форматированием
|
||||
"""
|
||||
datetime_now = dt.now()
|
||||
current_day = create_folder(datetime_now.day)
|
||||
current_month = create_folder(datetime_now.month)
|
||||
current_year = f"{datetime_now.year}"
|
||||
return current_year, current_month, current_day
|
||||
22
utils/logger.py
Normal file
22
utils/logger.py
Normal file
@@ -0,0 +1,22 @@
|
||||
"""
|
||||
Настройка логгера
|
||||
"""
|
||||
import logging
|
||||
from config import LOG_FILE
|
||||
|
||||
|
||||
def setup_logger(name: str = __name__) -> logging.Logger:
|
||||
"""
|
||||
Настройка и возврат логгера
|
||||
"""
|
||||
logging.basicConfig(
|
||||
filename=LOG_FILE,
|
||||
level=logging.INFO,
|
||||
format="%(asctime)s - %(levelname)s - %(message)s"
|
||||
)
|
||||
logger = logging.getLogger(name)
|
||||
return logger
|
||||
|
||||
|
||||
# Глобальный логгер
|
||||
logger = setup_logger()
|
||||
Reference in New Issue
Block a user