をデコードすることができない私は、HTMLフォーム経由でアップロードしていCSVファイルを持っているのPython APIへUnicodeDecodeError: 'UTF8' コーデックがバイト0xea
APIは、次のようになります。
@app.route('/add_candidates_to_db', methods=['GET','POST'])
def add_candidates():
file = request.files['csv_file']
x = io.StringIO(file.read().decode('UTF8'), newline=None)
csv_input = csv.reader(x)
for row in csv_input:
print(row)
私は問題の原因となっているファイルの部分を見つけました。私のファイルにはÍ
文字があります。
私はこのエラーを取得する:UnicodeDecodeError: 'utf8' codec can't decode byte 0xea in position 1317: invalid continuation byte
私は.decode('UTF8')
でそれを復号化したか、エラーがfile.read()
とその前に起こっていると思いましたか?
これを修正するにはどうすればよいですか?
** **
編集:私は、ファイルのコントロールを持っています。私は自分自身でCSVファイルを作成しています(時にはこのデータには奇妙な文字があります)。
サーバー側では、ファイルの各行を読み込んでデータベースに挿入しています。
utf8が有効ではないことを伝えています。これを修正するには、有効なutf8を使用してください。 – pvg
ああ、utf8にはデコードできないと言っているのは、それが有効なutf8文字ではないからです。 –
右。このような質問のために、Pythonのバージョンを投稿すると便利です。これはPython 2のようです。 – pvg