Ali_Pythonist
Member
Привет, пытаюсь скачать фото которое отправил пользователь, но получаю такую ошибку TypeError: a bytes-like object is required, not '_io.BytesIO'. Как исправить код? Помогите пожалуйста, код ниже.
Python:
import asyncio
import os
from io import BytesIO
from aiogram import Bot, Dispatcher, F
from aiogram.filters import Command
from aiogram.types import Message
from testBot.token_bot import token
bot = Bot(token=token)
dp = Dispatcher()
by = BytesIO()
@dp.message(Command('start'))
async def bot_start(message: Message):
await message.answer(text='привет.')
@dp.message(F.photo)
async def bot_photo(message: Message):
photo_id = message.photo[-1].file_id
print(type(photo_id))
file_photo = await bot.get_file(photo_id)
print(type(file_photo))
file_name, file_extension = os.path.splitext(file_photo.file_path)
print(type(file_name), type(file_extension))
download_file_photo = await bot.download_file(file_photo.file_path)
print(type(download_file_photo))
src = 'photo/' + photo_id + file_extension
with open(src, 'wb') as new_file:
new_file.write(download_file_photo)
async def main():
await dp.start_polling(bot)
asyncio.run(main())