2016-10-14 6 views
0

BytesIOまたはStringIOオブジェクトの内容を取得し、それをエンコードするためにbase64.standard_b64encode()を使用しようとしています。私は両方を試みました。これはpython 2.7でうまく動作しますが、python 3.5では次のエラーが発生します。BytesIOまたはStringIOをbase64.standard_b64encodeで使用しているPython3.5エラー

はTypeError:「バイト」オブジェクトは、この問題を持つコードの一部が暗黙のうちに

あるをstrに変換することはできません。

output = BytesIO() 
img.save(output, format="PNG") 
output.seek(0) 


data = "data:image/png;base64," + base64.standard_b64encode(output.read()) 

html = "<html><body><img src='DATA'></body></html>" 

私は「刺す」Bを使用して文字列を、このエラーを修正への参照を見てきましたが、私はそれはファイルからの読み取りにも適用されるのか分かりません。

おかげ

答えて

0

は私の問題はbase64エンコードではなかったが判明ではなく、私はそれを追加しようとしていた文字列。私は次のことをしなければならなかったので、pythonはそれをもうバイトエンコーディングと見なしませんでした。

base64.b64encode(output.read()).decode() 
関連する問題