Декодирование / кодирование иностранных символов / UnicodeEncodeError: кодек 'charmap' - PullRequest
0 голосов
/ 05 марта 2019

Я пытаюсь экспортировать некоторые твиты в файл json, но получаю ошибки. Когда я не получаю ошибок, это помещает символ «b» в мои данные и, следовательно, портит мой формат json. Вот мой пример и код:

вот содержание «твитов»: ['Мобильный телефон Xiaomi Redmi 6 64 ГБ / 4 ГБ против \ n Мобильный телефон Huawei Honor 8X 64 ГБ \ n по параметрам соответствуют 86…', «Xiaomi Rilis Redmi Note 7 Pro ди Индия, Ини Спесификасинья»]

который я затем конвертирую в строку:

tweets2=str(tweets)

и когда я пытаюсь экспортировать его:

with open("tw_stream.jsonl", 'a') as f:
    f.write(tweets2)

Я получаю следующую ошибку:

UnicodeEncodeError: 'charmap' codec can't encode characters in position 2- 
10: character maps to <undefined>

Итак, проблема в том, что я пытаюсь удалить часть 'b \' строки, так как она недопустима в формате json, но при этом я не могу кодировать иностранные символы в "utf-8" ...

Если кто-то может помочь, это будет высоко ценится.

Спасибо: -)

1 Ответ

1 голос
/ 05 марта 2019

Вы можете использовать кодировку utf-8, передав параметр param encoding = "utf-8" с помощью ..

...