denmeln
@denmeln

Как отправить рандомную фотографию из папки в проекте, Telegram bot — python?

Приветствую. Как реализовать функцию
Допустим есть команда /photo , при нажатии на команду пользователю отправляется кнопка - текст на кнопке например: получить фото

При нажатии на кнопку , пользователю отправляется рандомная картинка из папки в проекте pycharm ce

Буду благодарен любой помощи. Спасибо . telegrambotapi
  • Вопрос задан
  • 3589 просмотров
Решения вопроса 1
MinTnt
@MinTnt
import telebot
from telebot import types
import os
import random

bot = telebot.TeleBot("token")

@bot.message_handler(content_types=['text'])
def start(message):
	if message.text.lower() == '/photo':
		kbPhoto = telebot.types.ReplyKeyboardMarkup()
		kbPhoto.row('Получить фото')
		kbPhoto.row('Выйти')
		bot.send_message(message.from_user.id, 'Нажмите на кнопку ниже, чтоб получить фотографию.', reply_markup = kbPhoto)
	if message.text.lower() == 'получить фото':
		photo = open('test/' + random.choice(os.listdir('test')), 'rb')
		bot.send_photo(message.from_user.id, photo, caption = 'Лови')
	if message.text.lower() == 'выйти':
		bot.send_message(message.from_user.id, 'Клавиатура убрана.', reply_markup = types.ReplyKeyboardRemove())

bot.polling( none_stop = True, interval=0 )

*Но это при условии, что в той же директории файла есть папка 'test' с картинками
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы