Итак, у меня есть дискорд-бот, с которым я играю, чтобы изучить Python. У меня есть команда, которая загружает изображения и редактирует/объединяет их, а затем отправляет отредактированное изображение в чат. Я использовал requests
для этого раньше, но один из разработчиков библиотеки для discord.py сказал мне, что я должен использовать aiohttp
вместо requests
. Я не могу найти, как загружать изображения в aiohttp
, я перепробовал кучу всего, но ничего не работает.
if message.content.startswith("!async"):
import aiohttp
import random
import time
import shutil
start = time.time()
notr = 0
imagemake = Image.new("RGBA",(2048,2160))
imgsave = "H:\Documents\PyCharmProjects\ChatBot\Images"
imagesend = os.path.join(imgsave,"merged.png")
imgmergedsend =os.path.join(imgsave,"merged2.png")
with aiohttp.ClientSession() as session:
async with session.get("http://schoolido.lu/api/cards/788/") as resp:
data = await resp.json()
cardsave = session.get(data["card_image"])
with open((os.path.join(imgsave, "card.png")),"wb") as out_file:
shutil.copyfileobj(cardsave, out_file)
это то, что у меня есть прямо сейчас, но это все еще не работает.
Итак, есть ли способ загрузить изображения?
await
доsession.get(data["card_image"])
. Такжеcardsave
является ответом, а не файлоподобным объектом. Вы должны вручную скопировать тело байтов из ответа в файл. - person Andrew Svetlov   schedule 15.02.2016