Как открыть изображение с путем к файлу из базы данных? - PullRequest
0 голосов
/ 26 июня 2019

Я отправляю изображения с клиента на сервер, где я сохраняю их в файловой системе и помещаю путь в свою базу данных.Я могу открыть изображение, как только получу его от клиента, но если я запустлю другой код, чтобы попытаться открыть изображение из пути к файлу, полученного из базы данных, изображение не откроется.

Я используюbase64 для кодирования и отправки через мой сокет, но приму любые советы на этот счет.

term = '%'+'imagem0'+'%'
query1 = c.execute('SELECT picturepath FROM imagensdb WHERE picturepath LIKE ?', (term,))
data1 = query1.fetchone()

for row in data1:
    print(row)
    lopath = row

with open(lopath, 'rb') as input_file:
    photostr = base64.b64encode(input_file.read())
    print(len(photostr))
    print('photostr =', photostr)
    photostr1 = base64.b64decode(photostr) //edit, line added
    image_result = open('requestedphoto.png', 'wb')
    image_result.write(photostr1) //also edited (photostr for photostr1)

'imagem0.png' будет именем картинки.Я ожидаю, что «требуемая фотография.png» будет открыта, но я получаю «Неустранимая ошибка чтения файла изображения PNG: не файл PNG».

Заранее спасибо!

@Edit: отредактировал код de, и, кажется, он работает нормально, НО я должен дважды запустить код de.Во-первых, изображение загружено не полностью.Запуск снова, тогда я могу открыть файл .png в обычном режиме.Понятия не имею, почему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...