Динамическое генерирование inline кнопок при создании телеграм бота

Делаю телеграм бота через telebot У меня есть сайт и с него через парсинг берутся данные После парсинга получаю данные: Адрес: ул. Балканская, 26 Адрес: ул. Ратная, 27 Мне необходимо создавать inline кнопки в зависимости от полученных значений после парсинга. Эти значения могут быть разными и создавать кнопки надо динамически. Как это можно сделать?


Ответы (2 шт):

Автор решения: MyZik
from telebot.types import InlineKeyboardMarkup, InlineKeyboardButton

keyboard = InlineKeyboardMarkup()
keyboard.row_width = 2

for i in range(0, len(adress)):
    keyboard.add(InlineKeyboardButton(adress[i].text, callback_data="address_"))

bot.send_message(cid,'Выберите адрес парковки',reply_markup = keyboard)

Вам только нужно изменить под себя callback_data (ID адреса, например, или что там у Вас) и при отправке сообщения (bot.send_message()) в аргументе reply_markup передавать переменную keyboard.

→ Ссылка
Автор решения: FreeAngel

В данном посте очень подробно описана генерация кнопок. Когда каждой call.data присваивается префикс, а при нажатии делается выборка по данному префиксу методом call.data.startswith. И далее с этим можно удобно работать

→ Ссылка