понедельник, 31 марта 2014 г.

Проверяем размер базы данных в PostgreSQL

Чтоб не ломать голову, от чего база с удаленного сервера так долго дампится разумно будет проверить ее размер)

Для PostgreSQL это можно сделать так:

Также есть возможность проверить вес отдельной схемы:

Всем приятных бэкапов.

понедельник, 17 февраля 2014 г.

Собираем поставку python-приложения используя cx_Freeze


Когда я закончил работу над скриптом для распознавания текста то столкнулся с неожиданной проблемой. Дело в том что компьютер на котором его планировалось запускать работает под управлением ОС Windows и у оператора нет возможности установить python и необходимые библиотеки. Я столкнулся с таким препятствием впервые так как раньше мои скрипты применялись только на компьютерах с *nix системами, а там поставить все необходимое из репозитория не проблема. Решить вопрос я смог при помощи cx_Freeze. Свой опыт по его использованию я решил изложить в этом небольшом мануале.

четверг, 13 февраля 2014 г.

Обрабатываем статистические данные при помощи sqlite3-shell

Преамбула

На сайте журнала "xakep" ведется рейтинг лучших репозиториев на GitHub по итогам недели. В последнем рейтинге меня заинтересовала утилита TextQL занявшая первое место. По описанию она позволяет выполнять sql запросы на текстовых данных описанных в формате csv. Мне показалось это интересным и я открыл демо:

Демонстрация работы утилиты TextQL

в демонстрации меня удивил момент когда пользователь перешел в режим sqlite-консоли. Я полез в исходник и увидел то что в принципе и ожидал. Утилита представляла собой обертку над базой sqlite3 с возможностью импорта/экспорта данных в csv формат. Все бы ничего, но эти  возможности встроены в штатный шел базы по умолчанию. О том как использовать их к своей пользе я и хочу рассказать.

понедельник, 10 февраля 2014 г.

Распознаем текст на Python

Несколько дней назад ко мне обратился мой друг с просьбой помочь в решении проблемы возникшей у него на работе. Друг работает на крупном промышленном предприятии в отделе автоматизации. Одна из систем находящаяся в ведении ихнего отдела занимается сбором статистики после чего формирует ежедневные отчеты в виде бинарного файла или jpeg-изображения подготовленного к распечатке. Для того чтобы получить эти данные в удобоваримом для обработки виде, предприятие-поставщик предлагает приобрести лицензию на отдельную утилиту для извлечения данных из бинарного файла за неприемлемо-большую сумму. Естественно этого делать никто не стал. Моему товарищу как самому молодому хотели вменить в обязанность ежедневно перенабирать данные с изображения. Но зачем делать руками то что можно автоматизировать.

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

Используем pip из под корпоративного прокси

На новой работе мне пришлось перестраиваться под общие корпоративные стандарты. Переход на Windows был не сталь болезненным, так как многие консольные плюшки я установил отдельно при помощи cygwin. Однако появилась следующая проблема. Интернет у нас раздается через корпоративный прокси который требует доменный логин и пароль. После чтения манов мною был найден следующий способ передать требуемые параметры менеджеру пакетов python-а:

pip install <package_name> --proxy <domain>\<login>@<proxy_host>:<proxy_port>

 Надеюсь это сэкономит время тому кто столкнется с аналогичной проблемой.

суббота, 21 декабря 2013 г.

Парсим сайт при помощи Python

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

Ставим задачу.

Скрипт должен уметь парсить сайт, скачивать нужные изображения выдирая для них  названия из заголовков на странице, вести учет скачанного, для того чтобы загружать только обновления, и уметь работать из под прокси.

среда, 18 декабря 2013 г.

Первый пост

Решил начать вести свой блог... Я накопил некоторый опыт в своей профессии и хотел бы поделится им. Собираюсь публиковать здесь описание своих хоум-мейд проектов. Если потребуются какие-либо разъяснения - смело пишите, я постараюсь дать исчерпывающие ответы.