Форум сайта python.su
избранное
есть файл формата csv. В нём есть символы в какой-то неведомой кодировке. Задача тупо удалить их и сделать информацию читаемой.
file.read() - выдаёт ошибку: UnicodeDecodeError: ‘charmap’ codec can't decode byte 0x98 in position 18068: character maps to
csv.reader(tsvin, delimiter='\t') - тоже фэйлится (ещё раньше). Попытки читать в какой-то конкретной кодировке, приводят к ухудшению результата.
Соответственно вопрос как можно обработать (удалить , проигнорировать) символ если программа вылетает при его прочтении?
Попробовал через try/except - они ничего не дают , программа всё равно прекращает работу при ошибке.
Файл прилагаю.
Прикреплённый файлы: r.csv (968,5 KБ)
Офлайн
>>> import csv >>> >>> f = open('r.csv', encoding='utf-8', errors='ignore') >>> r = csv.reader(f, delimiter=';') >>> lst[:2] [['train_id', 'name', 'item_condition_id', 'category_name', 'brand_name', 'price', 'shipping', 'item_description'], ['0', 'MLB Cincinnati Reds T Shirt Size XL', '3', 'Men/Tops/T-shirts', '', '10', '1', 'No description yet']] >>> f.close() >>>
Офлайн
СПСИБО!!!
Офлайн