Поиск по блогу

Показаны сообщения с ярлыком csv. Показать все сообщения
Показаны сообщения с ярлыком csv. Показать все сообщения

суббота, 11 апреля 2015 г.

Сводим все три промежуточных файла в один 2014_all.csv

Здесь перехожу в папку с тремя файлами (2014.csv, 2014_2_3.txt, 2014_1.txt) /media/MYLINUXLIVE/Documents/Xpdf/aerbu_2014_all_csv_new/ и пытаюсь все собрать в один файл.

четверг, 9 апреля 2015 г.

Первый вариант методики очистки и шаблона(1) конкатенции таблиц с Pandas

Файлы таблиц могут иметь разное число столбцов, столбцы разное форматирование, если использовать DataFrame Pandas, то эти задачки решаются очень просто. Здеся я попытался использовать возможности Notebook, PDB, чтобы совместить выполнение кода, тестирование, документирование, логирование...
Сначала "ставим задачу", потом последовательно выполняем в итераторе импорт файлов со столбцами "Brandt 2014y 2013y 1413y 2014m 2013m 1413m Datem", добавляем столбец, читстим и преобразуем два столбца object в Float64, преобразуем строки в даты... Сохраняем все на диск и в инфо-файл.

воскресенье, 22 марта 2015 г.

Грязные AEBto3tables - осваиваем 10 из 100 опций read_csv Pandas - как читать построчно куски csv файла

Здесь возвращаемся к папкам с "замусоренными" полуфабрикатами после парсинга pdf-файлов с данными продаж автомобилей с сайта AEBrus.ru в 2014г.
Каждый файл надо просмотреть, убрать особенности форматирования в каждом столбце (например, в качестве разделителея разрядов могут испоьзоваться и запятые, и пробелы), добавть столбец даты(месяца)... не говоря уже о такой ерунде, как traling spaces, кавычки, лишние звездочки (*) и прочее... Начал считывать файл в DataFrame и тут же получил ошибку "CParserError: Error tokenizing data. C error: Expected 8 fields in line 38, saw 9", быстро обнаружил, что можно просто не читать эту строку..., а потом и обработчик ошибок нашелся...

пятница, 1 августа 2014 г.

Первый спайдер-сырец с тремя объектами pipeline (работающий четвертьфабрикат)

Снова подправил mail_csv_2_1.py Получил почти окончательный вариант паука, который парсит csv, и добавляет поле rtesponse.url. Потом первый объект pipeline убирает первые две строчки, а второй pipeline из поля URL выбираеит нужные подстроки. Сначала мы записываем все поля в файл, используя опцию (scrapy crawl mail_csv_2_1 -o items_2_2.csv -t csv), а потом дописываем модуль'scrapy_csv_2.pipelines_tofile.CsvWriterPipeline' Этот пост - решение всех задачек, которые возникали в предыдущих постах.

вторник, 29 июля 2014 г.

Метод split объекта str и другие методы строки

В предыдущем посте оператор ** "i['purlplit'] = i['purl'].split("/")[-1]"** выдает пустую строку. Здесь мы проверили, как работает метод split и распечатали help(str). Хотя оказалось, что строка "хитрая", причина в особенностях работы объекта Item (следующий пост).

суббота, 26 июля 2014 г.

Пробуем добавить поля в паука mail_csv_2_1. Парсим i['proj_name'] = response.url.split("/")[3]

Добавляем в файл паука в def parse_row(self, response, row) операторы присвоения новых полей. Паук теперь парсит csv файл в 6 полей, но это не окончательный вариант

пятница, 25 июля 2014 г.

Pipeline для того, чтобы отфильтровать первые две строчки после парсинга из источника nissan_2.csv

В штатном примере Dirbot есть фильтрующий pipeline. Оказалось, что его можно приспособить для фильтрации кириллицы. Не зря я собрал раньше все свои упражнения в пост Кодировка UTF-8 Или, как дружить с объектами Str и Unicode Pyton 2.x
Накануне читал два раздела документации Scrapy - Pipelines, Item Loaders... Здесь пример простейшего практикума.

среда, 23 июля 2014 г.

Парсим csv файл своим первым MailCsvSpider

И выясняем, что паук просто ищет текст между разделителями (запятая) в csv файлах и формирует из них именованные поля Item Fields. Но это еще не все, он пропускает пустые строчки...

Как сохранить response.body в файл прямо из спайдера Scrapy (filename = "spider_"+response.url.split("/")[-2])

Чтобы проект имел законченый вид, надо бы записать (куда-нибудь) результаты. Сделать это проще всего в текстовый (csv) файл. Нашел пример Creating a simple python crawler with scrapy и попробовал. Все получилось. Сама по себе идея об оработке файла в процессе парсинга пришла после того, как я вспомнил про CacheMiddleWare...

вторник, 22 июля 2014 г.

Пошаговое руководство по созданию проекта Scrapy CSV

Создаем первый проект для парсинга csv файлов. Записываем все действия. После того, как был прописан абсолютный путь (да еще) и к новому "правильному" локальному csv файлу, сообщения в консоли подтвердили правильное распарсивание строк. Этим здесь и ограничились...

вторник, 21 января 2014 г.

Постановка задачи "Процессинг csv таблиц" (итерация 1)

После того, как мы скачали несколько десятков однотипных файлов, нужно классифицировать их, добавить к ним столбцы, почистить от мусора, потом склеить строки... Здесь мы выбираем наиболее оптимальную структуру папок, структуру имен, содержание служебных файлов... Для этого мы будем использовать функции записи и чтения строк, import CSV, преобразование строк в объект датавремя