@PostAlexandr

Постоянно падает бот с ошибкой ValueError: I/O operation on closed file?

Постоянно падает бот! Может быть есть идеи для разрешения этого вопроса ?

import asyncio

from aiogram import Bot, types
from aiogram.dispatcher import Dispatcher, FSMContext
from aiogram.utils import executor
from aiogram.dispatcher.filters import Text
from aiogram.dispatcher.filters.state import State, StatesGroup
from aiogram.contrib.fsm_storage.memory import MemoryStorage
from aiogram.dispatcher.filters import Command
import random
from aiogram.types import ChatActions
import time

yes_or_no = ['Да','Нет']

Token = ''

class UserState(StatesGroup):
choise = State()

storage = MemoryStorage()

bot = Bot(token=Token)
dp = Dispatcher(bot, storage=MemoryStorage())

photo1 = open('C:/Users/ssvt/Desktop/forastral/adfad.png',
'rb')
photo2 = open('C:/Users/ssvt/Desktop/forastral/adfadf.png',
'rb')
photo3 = open('C:/Users/ssvt/Desktop/forastral/dghdghdg.png',
'rb')
photo4 = open('C:/Users/ssvt/Desktop/forastral/sfgsfgsf.png',
'rb')
photo5 = open('C:/Users/ssvt/Desktop/forastral/trdfghjfghj.png',
'rb')
photos = [photo1,photo2,photo3,photo4,photo5]

@dp.message_handler(commands="start")
async def cmd_start(message: types.Message):
await message.answer("Не можешь определиться с выбором ?! Спроси меня и я отвечу тебе! - Пример: купить или нет новые босjножки")
await UserState.choise.set()

@dp.message_handler(state=UserState.choise)
async def list_of_todo(message: types.Message, state: FSMContext):
await state.update_data(todo=message.text)
data = await state.get_data()
await bot.send_chat_action(message.chat.id, ChatActions.TYPING)
await asyncio.sleep(3)
await message.answer(random.choice(yes_or_no))

await bot.send_photo(chat_id=message.chat.id, photo=random.choice(photos))
await message.answer('Прислушайся к вселенной')
data = await state.get_data()
print(message.from_user.username,data)

if __name__ == '__main__':
while True:
try:
executor.start_polling(dp, skip_updates=True)
except Exception as e:
time.sleep(1)
print(e)

Сама ошибка:
return os.fstat(self._value.fileno()).st_size - self._value.tell()
ValueError: I/O operation on closed file
  • Вопрос задан
  • 189 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы