@AleDv

Как записать кириллицу в CSV на Python?

Всем привет, столкнулся с записью кириллицы в CSV - файл. есть такой код:
# -*- coding: utf-8 -*-
....
    with open(filename, 'w+', encoding='utf8', newline='') as file:
        writer = csv.writer(file, delimiter=';')
        count_elements = len(data['urls'])
        for i in range(1, count_elements):
            writer.writerow([
                data['titles'][i],
                data['titles'][i],
                int(data['costs'][i]),
                data['address'][i],
                data['urls'][i],
            ])


В итоге, в файле получаю кракозябру:
5ad72f911334c025099332.png

Как правильно записать кириллицу?
  • Вопрос задан
  • 18163 просмотра
Пригласить эксперта
Ответы на вопрос 4
@NaName
with open(filename, 'w+', encoding='utf8', newline='')
замените на
with open(filename, 'w+', newline='')
или
with open(filename, 'w+', encoding='cp1251', newline='')
Ответ написан
SimonOsipov
@SimonOsipov
Через баги к коммиту!
Обратите внимание на кодировку, которую вы используете:
encoding='utf8'

Обратите внимание на этот вопрос. Там есть ответ.
Ответ написан
@BlOr
data['urls'][i].encode("cp1251")
Ответ написан
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Используйте unicodecsv
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы