Не работает отправка фото в телеграм

я начинающий разработчик telegram ботов на питоне. можете подсказать что тут не так.

from PIL import ImageGrab
import telebot

API_TOKEN = "*************************"

bot = telebot.TeleBot(API_TOKEN)

@bot.message_handler(commands=['Start', 'start'])
def start_message(message):
    bot.send_message(message.chat.id, "Привет, команды находятся ниже)")


@bot.message_handler(commands=['Screen', 'screen'], content_types=['photo'])
def screen_grab(photo) :
    screenshot = ImageGrab.grab(bbox=False, include_layered_windows=False, all_screens=False)
    screenshot.save('img/start.png')
    bot.send_photo(photo.chat.id, photo='img/start.png')

bot.polling()

Это весь код бота. Api токен я убрал от греха подальше. При введении команды /screen скриншот в папке появляется, но не отправляется.


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

Автор решения: vvvvvvvvvvv

Вам нужно предоставить картинку в виде последовательности байтов. Откройте её и передайте в аргументы метода send_photo:

bot.send_photo(photo.chat.id, photo=open('img/start.png', 'rb'))
→ Ссылка