Невозможно преобразовать строку base64 в изображениеPython

Программы на Python
Ответить
Anonymous
 Невозможно преобразовать строку base64 в изображение

Сообщение Anonymous »

Может ли кто-нибудь помочь мне превратить эти данные base64 в изображение? Я не знаю, связано ли это с тем, что данные не были декодированы должным образом или с чем-то еще. Вот как я расшифровал данные:

Код: Выделить всё

import base64

c_data = { the data in the link (string type) }

c_decoded = base64.b64decode(c_data)
Но возникла ошибка «Неверное заполнение», поэтому я следовал некоторым руководствам и пробовал разные способы декодирования данных.

Код: Выделить всё

c_decoded = base64.b64decode(c_data + '=' * (-len(c_data) % 4))

c_decoded = base64.b64decode(c_data + '=' * ((4 - len(c_data) % 4) % 4)
Оба способа декодировали данные без выдачи ошибки «Неверное заполнение», но теперь я не могу превратить декодированные данные в изображение.

Я попробовал создать пустой png затем запишите в него декодированные данные:

Код: Выделить всё

from PIL import Image

with open('c.png', 'wb') as f:
f.write(c_decoded)
image = Image.open('c.png')
image.show()
Это не сработало и выдало ошибку: невозможно идентифицировать файл изображения «c.png».

Я пробовал использовать BytesIO:

Код: Выделить всё

from PIL import Image
import io
from io import BytesIO

image = Image.open(io.BytesIO(c_decoded))
image.show()
Теперь выдала ошибку: невозможно идентифицировать файл изображения

Пожалуйста, помогите мне.

Подробнее здесь: https://stackoverflow.com/questions/739 ... into-image
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»