• После шифровки и компиляции в exe файла .py появляется ошибка Traceback (most recent call last)?

    @mipo2 Автор вопроса
    shurshur, "pyarmor - посредственный способ сокрытия кода. От взлома достаточно квалифицированным программистом никак не защищает вообще". Как лучше всего защитить код написанный на питоне? Понимаю, что опытные реверсеры смогу получить код читабельный код программы, но от менее опытных как защититься?
    Написано
  • Как сделать выход в главное меню в инлайн кнопках?

    @mipo2
    Пример:
    from aiogram import Bot, Dispatcher, types
    from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup
    from aiogram.utils import executor
    import logging

    API_TOKEN = 'YOUR_API_TOKEN_HERE'

    logging.basicConfig(level=logging.INFO)

    bot = Bot(token=API_TOKEN)
    dp = Dispatcher(bot)

    # Функция для создания главного меню
    def get_main_menu_keyboard():
    keyboard = InlineKeyboardMarkup(row_width=1)
    button1 = InlineKeyboardButton("Перейти в подменю", callback_data='go_to_submenu')
    keyboard.add(button1)
    return keyboard

    # Функция для создания подменю
    def get_submenu_keyboard():
    keyboard = InlineKeyboardMarkup(row_width=1)
    button1 = InlineKeyboardButton("Вернуться в главное меню", callback_data='go_to_main_menu')
    keyboard.add(button1)
    return keyboard

    # Обработка команды /start
    @dp.message_handler(commands=['start'])
    async def send_welcome(message: types.Message):
    await message.answer("Добро пожаловать! Выберите опцию:", reply_markup=get_main_menu_keyboard())

    # Обработка CallbackQuery
    @dp.callback_query_handler(lambda c: c.data == 'go_to_submenu')
    async def process_go_to_submenu(callback_query: types.CallbackQuery):
    await bot.answer_callback_query(callback_query.id)
    await bot.send_message(callback_query.from_user.id, "Вы в подменю. Вы можете вернуться в главное меню.", reply_markup=get_submenu_keyboard())

    @dp.callback_query_handler(lambda c: c.data == 'go_to_main_menu')
    async def process_go_to_main_menu(callback_query: types.CallbackQuery):
    await bot.answer_callback_query(callback_query.id)
    await bot.send_message(callback_query.from_user.id, "Вы вернулись в главное меню.", reply_markup=get_main_menu_keyboard())

    if __name__ == '__main__':
    executor.start_polling(dp, skip_updates=True)
    Написано