Python 3. Как переслать файл (изображение) не сохраняя его на диск, а временно сохраняя в оперативной памяти?
Python 3. Задача скачать файлы, и загрузить их в другое место. Думаю что временно записывать файлы на жесткий диск не лучший вариант. (по скорости и износу жесткого диска). Как можно временно подержать файл в оперативной памяти, а затем его отправить?
Скачиваю изображение так
r = requests.get(file_url)
Можно было бы временно сохранить изображение так:
with open('temp_image.jpg', 'wb') as f:
f.write(r.content)
Но я хочу узнать вариант как можно сделать аналогичное действие в оперативной памяти.
Обратите внимание
type(r.content)
<class 'bytes'>
Мой старый код для отправки изображения на сервер выглядит следующим образом
b = requests.post(a['upload_url'], files={'photo': open('temp_image.jpg', 'rb')}).json()
Файл отправляется в формате _io.BufferedReader
file = open("temp_image.jpg", "rb")
print(type(file)) # <class '_io.BufferedReader'>
print(file) # <_io.BufferedReader name='temp_image.jpg'>
Насколько я понимаю, нужно что бы бинарные данные в оперативной памяти были преобразованы в _io.BufferedReader , а после этого отправлены