Для создания чат-бота на Python с помощью библиотеки aiogram 3, следуйте инструкциям ниже:
pip install aiogram==3.0.0
from aiogram import Bot, Dispatcher, types from aiogram.contrib.middlewares.logging import LoggingMiddleware from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton from aiogram.utils import executor API_TOKEN = 'YOUR_API_TOKEN' bot = Bot(token=API_TOKEN) dp = Dispatcher(bot) dp.middleware.setup(LoggingMiddleware()) # Функция для удаления предыдущего сообщения async def delete_last_message(message: types.Message): await bot.delete_message(chat_id=message.chat.id, message_id=message.message_id) # Обработчик команды /start @dp.message_handler(commands=['start']) async def start(message: types.Message): keyboard = InlineKeyboardMarkup(row_width=2) buttons = [ InlineKeyboardButton(text="Button 1", callback_data="button1"), InlineKeyboardButton(text="Button 2", callback_data="button2"), InlineKeyboardButton(text="Button 3", callback_data="button3"), InlineKeyboardButton(text="Button 4", callback_data="button4") ] keyboard.add(*buttons) await message.answer("Choose a button:", reply_markup=keyboard) # Обработчик нажатия на inline кнопку @dp.callback_query_handler(lambda query: True) async def process_callback(callback_query: types.CallbackQuery): await delete_last_message(callback_query.message) button = callback_query.data keyboard = InlineKeyboardMarkup(row_width=1) if button == "button1": buttons = [ InlineKeyboardButton(text="Link 1", url="https://example.com/link1"), InlineKeyboardButton(text="Link 2", url="https://example.com/link2"), InlineKeyboardButton(text="Link 3", url="https://example.com/link3"), InlineKeyboardButton(text="Link 4", url="https://example.com/link4") ] # Добавьте аналогичные блоки для остальных кнопок (button2, button3, button4) keyboard.add(*buttons) await callback_query.message.answer("Choose a link:", reply_markup=keyboard) if __name__ == '__main__': executor.start_polling(dp, skip_updates=True)
Замените YOUR_API_TOKEN
на токен вашего бота.
Запустите скрипт bot.py и начните общение с вашим чат-ботом.
Теперь у вас есть чат-бот на Python с меню из 4 кнопок, каждая из которых содержит 4 inline кнопки с ссылками. Функция delete_last_message позволяет удалять предыдущее сообщение перед отправкой нового.
Обратите внимание: ответы, предоставляемые искусственным интеллектом, могут не всегда быть точными. Не рассчитывайте на них в критически важных областях, таких как медицина, юриспруденция, финансы или в вопросах, связанных с безопасностью. Для важных решений всегда обращайтесь к квалифицированным специалистам. Администрация сайта не несет ответственности за контент, сгенерированный автоматически.