Конечно! Вот пример простого бота на Python, который работает в Telegram и представляет собой магазин с 3-4 товарами. Для работы этого бота вам понадобится библиотека `python-telegram-bot`. Вы можете установить ее, используя pip:
```bash
pip install python-telegram-bot
```
Вот пример кода:
```python
import logging
from telegram import Update, InlineKeyboardButton, InlineKeyboardMarkup
from telegram.ext import Updater, CommandHandler, CallbackQueryHandler, ContextTypes
# Включаем логирование
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
level=logging.INFO)
logger = logging.getLogger(__name__)
# Список товаров
products = [
{'name': 'Товар 1', 'price': 100},
{'name': 'Товар 2', 'price': 200},
{'name': 'Товар 3', 'price': 300},
]
# Команда /start
async def start(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
keyboard = [[InlineKeyboardButton(prod['name'], callback_data=prod['name'])] for prod in products]
reply_markup = InlineKeyboardMarkup(keyboard)
await update.message.reply_text('Добро пожаловать в магазин! Выберите товар:', reply_markup=reply_markup)
# Обработка нажатия кнопок
async def button(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
query = update.callback_query
await query.answer()
selected_product = next((prod for prod in products if prod['name'] == query.data), None)
if selected_product:
await query.edit_message_text(text=f"Вы выбрали: {selected_product['name']}\nЦена: {selected_product['price']} руб.")
else:
await query.edit_message_text(text="Товар не найден.")
def main() -> None:
# Вставьте сюда токен вашего бота
updater = Updater("YOUR_TOKEN_HERE")
# Получаем диспетчера для регистрации обработчиков
dispatcher = updater.dispatcher
dispatcher.add_handler(CommandHandler("start", start))
dispatcher.add_handler(CallbackQueryHandler(button))
# Запуск бота
updater.start_polling()
# Бот будет работать до завершения
updater.idle()
if __name__ == '__main__':
main()
```
### Инструкции по использованию:
1. Создайте бота в Telegram через [BotFather](
https://core.telegram.org/bots#botfather ) и получите токен.
2. Замените `"YOUR_TOKEN_HERE"` в коде на токен, который вы получили от BotFather.
3. Установите необходимые библиотеки, если вы этого еще не сделали.
4. Запустите скрипт.
5. Напишите `/start` в своем Telegram-боте, чтобы начать взаимодействие.
Этот бот предлагает список товаров, и при выборе товара показывает его имя и цену. Вы можете расширить функциональность, добавив функции для оформления заказа или получения дополнительной информации о товарах.