ожидается строковый аргумент, получено «байтов» в buffer.write - PullRequest
0 голосов
/ 11 июня 2018

У меня есть это:

from io import StringIO
buffer = StringIO()

latest_file = 'C:\\Users\\miguel.santos\\Desktop\\meo_snapshots\\Snapshot_14.jpg'

buffer.write(open(latest_file,'rb').read())

TypeError: string argument expected, got 'bytes'

Есть идеи как решить?

1 Ответ

0 голосов
/ 11 июня 2018

io.StringIO для текста в кодировке Юникод, его аналог для байтов io.BytesIO.Поскольку ваш неподходящий файл является двоичным jpg, вам действительно следует использовать последний:

from io import BytesIO
buffer = BytesIO()

latest_file = 'C:\\Users\\miguel.santos\\Desktop\\meo_snapshots\\Snapshot_14.jpg'

buffer.write(open(latest_file,'rb').read())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...