• Предмет: Информатика
  • Автор: vovcenkod871
  • Вопрос задан 3 месяца назад

Python.
Завдання: Створити inline клавіатуру з двома кнопками, кожна з яких має свій callback_data: "button_yes" та "button_no".


experced: тг бот?
artemchik1032: у меня не пропускает код почему-то
vovcenkod871: тг бот
soqftk: тобі потрібно скачати бібліотеку aiogram, у терміналі введи : pip install aiogram

Ответы

Ответ дал: soqftk
1

from aiogram import Bot, Dispatcher, executor, types

from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup

TOKEN_API = "YOUR_TOKEN_API"

bot = Bot(YOUR_TOKEN_API)

dp = Dispatcher(bot)

ikb = InlineKeyboardMarkup(row_width=2)

ib1 = InlineKeyboardButton(text="YES",

                          callback_data='button_yes')

ib2 = InlineKeyboardButton(text='NO',

                         callback_data='button_no')

ikb.add(ib1, ib2)

@dp.message_handler(commands=['start'])

async def start_command(message: types.Message):

   await message.reply(text="HELLO",

                       reply_markup=ikb)

@dp.callback_query_handler(text='button_yes')

async def handle_button_yes(callback_query: types.CallbackQuery):

   await callback_query.message.answer(text="OK!")

@dp.callback_query_handler(text='button_no')

async def handle_button_no(callback_query: types.CallbackQuery):

   await callback_query.message.answer(text="WHY?:(")

if __name__ == '__main__':

   executor.start_polling(dp)

Я зробила через aiogram бібліотеку, можна також  зробити через telebot, але aiogram мені здається зручнішим.

Наприклад, я вводжу команду /start , після чого мені приходить повідомлення "HELLO!"

Під цим повідомленням є дві кнопки YES і NO.

Натиснувши на YES, до нас приходить callback OK!(наприклад), а коли ми натискаємо кнопку NO, то до нас приходить callback - WHY?:( (наприклад)

замість усіх цих OK і WHY, ти можеш вписати щось своє

також не забудь написати TOKEN API свого бота

p.s.: якщо буде помилка, можеш мені написати, я постараюся допомогти


vovcenkod871: Traceback (most recent call last):
File "main.py", line 1, in
from aiogram import Bot, Dispatcher, executor, types
ModuleNotFoundError: No module named 'aiogram'
 Ось таку помилку видає
soqftk: тобі потрібно скачати бібліотеку aiogram, зайди у термінал та впиши : pip install aiogram, а потім запусти код ще раз
Вас заинтересует