Python aiogram при повторном "нажатии кнопки" бот выдает ошибку ValueError: I/O operation on closed file
**
Всем заглянувшим привет!
** При повторной отправке комманды бот выдаёт ValueError: I/O operation on closed file как заставить его отправлять повторно цикл там написать или ? в сети ничего адекватного не нашел. InputFile вместо open пробовал.
from aiogram import Dispatcher, types
from createbot import dp, bot
#-------------------------------------------------
photo = open('f404.jpg', 'rb')
#--------------------------------------------------
async def commands_send(message : types.Message):
await bot.send_photo (message.from_user.id, photo=photo, caption= 'text')
def register_handler_client (dp : Dispatcher):
dp.register_message_handler(commands_send, commands=['send'])
За ранее спасибо за помощь.
Ответы (1 шт):
Автор решения: Aramid
→ Ссылка
в общем разобрался, нужно открывать фото через with (почитайте про контекстные менеджеры) что почему то не указано ни в каких описаниях bot.send_photo. Должно выглядеть так:
from aiogram import Dispatcher, types
from createbot import dp, bot
async def commands_send(message : types.Message):
with open('ppp.jpg', 'rb') as photo:
await bot.send_photo (message.from_user.id, photo, caption= 'text')
def register_handler_client (dp : Dispatcher):
dp.register_message_handler(commands_send, commands=['send'])
Всё работает чему я несказанно рад. Мне спасибо :)