Создаем Telegram бота
Получение фотографий
Следующий пример показывает, как скачать и сохранить картинку, которую прислал пользователь. Не забудьте создать папку images, в которую мы будем сохранять полученные картинки.
import uuid
import telebot
from PIL import Image
token = "ВАШ ТОКЕН"
bot = telebot.TeleBot(token=token)
def process(filename):
# обработка фотографии
pass
@bot.message_handler(content_types=['photo'])
def photo(message):
# скачивание файла
file_id = message.photo[-1].file_id
path = bot.get_file(file_id)
downloaded_file = bot.download_file(path.file_path)
# узнаем расширение и случайное придумываем имя
extn = '.' + str(path.file_path).split('.')[-1]
name = 'images/' + str(uuid.uuid4()) + extn
# создаем файл и записываем туда данные
with open(name, 'wb') as new_file:
new_file.write(downloaded_file)
# обрабатываем картинку фильтром
process(name)
# открываем файл и отправляем его пользователю
with open(name, 'rb') as new_file:
bot.send_photo(message.chat.id, new_file.read())
bot.polling(none_stop=True)