Форум сайта python.su
47
roloyarзакодированную в какую-нибуть кодировку, в которой будет результирующий файл.
Закодированную в каком виде?
Офлайн
0
sanodinХорошо, спасибо, попробую. Переделать из списка в строку получается, но хотелось бы все-таки чтобы пропустить именно список списков и именно через csv. Просто таких страниц, как я привел в примере - очень много, я хотел, чтобы скрейпер проходил по каждой странице (я этот функционал уже написал, просто тут его приводить смысла не было), забирал текст и вписывал в csv. Чтобы я потом в экселе мог работать с таблицей. Наверное, слишком многого хочу
кодировками пробуйте подобрать
Офлайн
0
Короче я тут еще по интернетам и по форуму порылся, нашел эту ветку: http://python.su/forum/topic/1073/
У меня вся загвоздка, как мне кажется, в том, что если брать отдельные элементы в списке и переводить в формат строк (str) то все получается читабельно. Если даже весь список перевести в строку, то получится. Но в том то и дело, что хочется оставить данные в формате списка, чтобы можно было этот список “скормить” модулю csv, а тут никак не получается.
В общем буду разбираться, может повезет, всем спасибо за помощь! Впрочем, если у кого будет совет, как это дело провернуть, счастью моему не будет пределов 
Офлайн
47
пройтись по списку и закодировать
lst = [s.encode('utf-8') for s in lst]
Отредактировано bismigalis (Окт. 17, 2013 11:37:08)
Офлайн
31
еще у меня так нормально отрабатывает запись в файл
только если делаю один список то записывает после каждого символа запятую, если делаю список списков то записывает нормально
import csv outfile = open('test_out.txt', 'w') writer = csv.writer(outfile) ls=[] ts=[] d=[[u'3424 \u0432\u0456\u0434 14.10.2013'], [u'3 \u0441\u0435\u0441\u0456\u044f VII \u0441\u043a\u043b\u0438\u043a\u0430\u043d\u043d\u044f']] for i in d: [s.encode('utf-8') for s in i] print s ls.append(s.encode('cp1251')) ts.append(ls) writer.writerows(ts)
Отредактировано sanodin (Окт. 17, 2013 17:09:39)
Офлайн