UnicodeEncodeError при попытке экспортировать динамо таблицу БД и записать в файл CSV - PullRequest
0 голосов
/ 08 января 2020

C: \ Users \ nishkumari \ Desktop> export-dynamicodb -t user-prods -f csv -o user-prods.csv export dynamicodb: user-prods Подключение к AWS DynamoDb Загрузка 2812 записей ..... 100% Всего скачанных записей: 2812 Запись в файл CSV. Трассировка (последний вызов был последним): Файл "C: \ Users \ nishkumari \ AppData \ Local \ Programs \ Python \ Python37-32 \ Scripts \ export-dynamodb-script.py", строка 11, в load_entry_point ('export -dynamodb == 2.2.1 ',' console_scripts ',' export-Dynamodb ') () Файл "c: \ users \ nishkumari \ appdata \ local \ Programs \ python \ python37-32 \ lib \ site-packages \ нажмите \ core.py ", строка 722, в вызов возврат файла self.main (* args, ** kwargs)" c: \ users \ nishkumari \ appdata \ local \ Programs \ python \ python37 -32 \ lib \ site-packages \ click \ core.py ", строка 697, в основном файле rv = self.invoke (ctx)" c: \ users \ nishkumari \ appdata \ local \ Programs \ python \ python37- 32 \ lib \ site-packages \ click \ core.py ", строка 895, in invoke return ctx.invoke (self.callback, ** ctx.params) Файл" c: \ users \ nishkumari \ appdata \ local \ " Programs \ python \ python37-32 \ lib \ site-packages \ click \ core.py ", строка 535, in invoke return callback (* args, ** kwargs) Файл" c: \ users \ nishkumari \ appdata \ local \ программы \ питон \ python37-32 \ Lib \ сайт-пакеты \ exportdynamodb \ лор rypoints \ main.py ", строка 28, в основном файле write_to_csv_file (data, output_filename)" "1014 *: \ users \ nishkumari \ appdata \ local \ Programs \ python \ python37-32 \ lib \ site-packages \ exportdynamodb \ entrypoints \ main.py ", строка 136, в файле write_to_csv_file writer.writerows (data ['items'])" c: \ users \ nishkumari \ appdata \ local \ Programs \ python \ python37-32 \ lib \ csv.py ", строка 158, в writerows возвращает self.writer.writerows (файл map (self._dict_to_list, rowdicts))" c: \ users \ nishkumari \ appdata \ local \ Programs \ python \ python37-32 \ lib \ encodings \ cp1252.py ", строка 19, in encode возвращает codecs.charmap_encode (input, self.errors, encoding_table) [0] UnicodeEncodeError: код 'charmap' c не может кодировать символы в позиции 108-109: символ отображается на

Ответы [ 2 ]

0 голосов
/ 06 февраля 2020

exportdynamodb вызывает open без указания encoding ref .

Кодировка по умолчанию для текстовых файлов - "UTF-8" на большинстве платформ, кроме Windows.

Попробуйте set PYTHONUTF8=1. Включает режим UTF-8. В режиме UTF-8 кодировка текста по умолчанию изменяется на UTF-8.

См. https://docs.python.org/3/using/windows.html#utf -8-mode для получения дополнительной информации о режиме UTF-8.

0 голосов
/ 08 января 2020

Попробуйте опцию ниже

  1. chcp 65001
  2. set PYTHONIOENCODING = UTF-8
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...