Обновление 4.2

This commit is contained in:
sergey
2025-02-08 19:12:38 +07:00
parent 6e2e7bdc0f
commit ef6906b240
39 changed files with 730 additions and 553 deletions

View File

@@ -6,3 +6,4 @@ from .analitics import *
from .library import *
from .media import *
from .configs import *
from .validators import *

View File

@@ -2,7 +2,7 @@
# Определение типа сообщения
from aiogram.types import ContentType
from configs import *
from ..configs import *
from .find_ids import find_imp_id
# Настройка экспорта модулей и логирования

View File

@@ -6,7 +6,7 @@ import json
import datetime
from aiogram.types import User, Birthdate
from configs import *
from ..configs import *
from ..library.time import TimeVariable
# Настройка экспорта модулей и логирования

View File

@@ -68,4 +68,4 @@ class DataID:
groups = data_list_id.get("important_groups_ids", {})
users = data_list_id.get("important_users_list_ids", {})
channels = data_list_id.get("important_channel_ids", {})
important = {**admins, **groups, **users, **channels}
important = {**groups, **admins, **users, **channels}

View File

@@ -2,20 +2,25 @@
# Создание и настройка бота в одном файле
from aiogram import Dispatcher, Bot, F
from aiogram.client.default import DefaultBotProperties
from aiogram.enums import ParseMode
from aiogram.client.default import DefaultBotProperties
from aiogram.utils.keyboard import ReplyKeyboardBuilder, InlineKeyboardBuilder
from apscheduler.schedulers.asyncio import AsyncIOScheduler
from .time import *
from configs import bot_token, BotVariables
from ..configs import bot_token, BotVariables
# Настройка экспорта модулей и логирования
__all__ = ("dp", "bot", "scheduler", "F_Media", "BotInfo", "bot_get_info")
log_type = "Bot"
# Настройка экспорта из этого модуля
__all__ = ("dp", "rkb", "ikb", "bot", "scheduler",
"F_Media", "F_All", "BotInfo", "bot_get_info")
# Создание экземпляра диспатчера и его параметров
# Создание экземпляра диспатчера, строителей кнопок
dp = Dispatcher()
rkb = ReplyKeyboardBuilder()
ikb = InlineKeyboardBuilder()
# Настройка параметров диспатчера
dp["started_at"] = host_time
dp["started_at_msk"] = get_choice_time(TimeVariable.choice_utc_msk)
dp["is_active"] = True # Флаг активности бота
@@ -46,6 +51,7 @@ bot_properties = DefaultBotProperties(
bot = Bot(token=bot_token, default=bot_properties) # Объявление бота
scheduler = AsyncIOScheduler(timezone=get_time_zone()) # Создание планировщика
F_Media = F.photo | F.files | F.video | F.animation | F.voice | F.video_note # Фильтр-медиа
F_All = F.text | F.photo | F.files | F.video | F.animation | F.voice | F.video_note # Фильтр на все
# Класс для хранения данных о боте (некоторые переменные даны как шаблон)

View File

@@ -0,0 +1,5 @@
# BotLibrary/validators/__init__.py
# Инициализация пакета validator, для работы с валидацией данных
# Импортируем библиотеки для экспорта
from .email_validators import *

View File

@@ -0,0 +1,15 @@
# BotLibrary/validators/email_validators.py
# Создание валидации почты для проекта
from email_validator import validate_email, EmailNotValidError
# Настройка экспорта из этого модуля
__all__ = ("valid_email",)
def valid_email(text: str) -> str | None:
try:
email = validate_email(text)
except EmailNotValidError:
return None
return email.normalized