main.py:
import sys
import os
import asyncio
import os
from aiogram import Bot, Dispatcher
from dotenv import load_dotenv
from pathlib import Path
# Настройка путей
BASE_DIR = Path(__file__).parent.resolve()
# Добавляем необходимые пути для импортов
sys.path.extend([
str(BASE_DIR), # Корень проекта
str(BASE_DIR / "easyBot"), # Первый бот
str(BASE_DIR / "PhotoToTextBot") # Второй бот
])
# Загрузка переменных окружения из обоих .env файлов
load_dotenv("easyBot/.env")
TOKEN_1 = os.getenv("TOKEN")
load_dotenv("PhotoToTextBot/.env")
TOKEN_2 = os.getenv("TOKEN")
# Импортируйте роутеры для каждого бота
from easyBot.handlers import start as easybot_start
from easyBot.handlers import user_group as easybot_user_group
from PhotoToTextBot.handlers import start as photototext_start
from PhotoToTextBot.handlers import flashcards as photototext_flashcards
from PhotoToTextBot.handlers import settings_handlers as photototext_settings
# Создайте два экземпляра бота с разными токенами
bot1 = Bot(token=TOKEN_1)
dp1 = Dispatcher()
bot2 = Bot(token=TOKEN_2)
dp2 = Dispatcher()
# Регистрируем роутеры для каждого диспетчера
dp1.include_router(easybot_start.router)
dp1.include_router(easybot_user_group.user_group_router)
dp2.include_router(photototext_start.router)
dp2.include_router(photototext_flashcards.fc_router)
dp2.include_router(photototext_settings.settings_router)
async def main():
await asyncio.gather(
dp1.start_polling(bot1),
dp2.start_polling(bot2)
)
if __name__ == "__main__":
asyncio.run(main())
Traceback (most recent call last):
File "C:\Users\32165\OneDrive\Рабочий стол\easyBot\main.py", line 27, in
from easyBot.handlers import start as easybot_start
File "C:\Users\32165\OneDrive\Рабочий стол\easyBot\easyBot\handlers\start.py", line 6, in
from filters.chat_type import ChatTypeFilter
ModuleNotFoundError: No module named 'filters.chat_type'
start.py (в easyBot):
import os
from aiogram import Router, F
from aiogram.filters import CommandStart, Command
from aiogram.types import Message, CallbackQuery
from yoomoney import Quickpay, Client
from filters.chat_type import ChatTypeFilter
import keyboards.all_keyboards as kb # Импортированный модуль клавиатур
import uuid
from db import db # Импорт функций для работы с базой данных
from dotenv import load_dotenv
# Загрузка переменных окружения из файла .env
load_dotenv()
...
router = Router()