前提・実現したいこと
DjangoのHttpResponseを使い、pandasのDataFrameで作成したファイルを文字化けなくcsvファイルにしてダウンロードしたい。
発生している問題・エラーメッセージ
UnicodeEncodeError: 'cp932' codec can't encode character '\xab' in position 92: illegal multibyte sequence
該当のソースコード
Python
1#dfは事前に作成した出力ファイル 2def export_file(request): 3 if request.method == "POST": 4 result = request.POST 5 filename = "result.csv" 6 response = HttpResponse(content_type='text/csv; charset=cp932') 7 response['Content-Disposition'] = "attachment; filename={}; filename*=UTF-8''{}".format(filename,filename) 8 df.to_csv(path_or_buf=response) 9 return response
試したこと
文字コードはUTF-8やSHIFT-JISでも試したが、どれもダメだった。ファイルの中に複数の文字コードが混在していると思われる。
補足情報(FW/ツールのバージョンなど)
Python 3.9.1
Django 3.1.5
pandas 1.2.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。