About | Blog | xapy

Archive for January, 2008

Мой Vim

Не так давно решил прислушаться к мнeнию и опыту многих разработчиков, использующих в своей работе, а так же повседневной жизни текстовый редактор Vim. В этом посте хотел бы рассказать, что я сделал со своим редактором, для поднятия удобства и комфортности до уровня полноценного( ? ) IDE. Итак, что на данный момент умеет мой редактор:

  • Подсветка синтаксиса
  • Удобная цветовая схема
  • Сворачивание кода
  • Авто-дополнение кода
  • Организация файлов в проекты
  • Отображение структуры кода
  • Проверка python-кода средствами pylint и pychecker

Многое из перечисленного входит в стандартную поставку, нужно только правильно его завести. Об этом, и том, что доставлял сам — в продолжении

 continue reading

Полуавтоматическая обработка каптчи

Время от времени нам приходится автоматизировать разные действия - от рутинных, до довольно мудрённых. Нормально, что в этом нам помогают наши навыки разработки ПО, программирования. В идеале, конечно, к ним ещё приложить математический поход, и тогда такой продукт становится на порядок ценнее. В этом посте хотел поделится своим решением, для упрощения жизни рядовым автоматизаторам :) Следующий скрипт представляет из себя небольшой модуль, который поможет делегировать пользователю обработку каптчи, тем самым позволив вашим скриптам взять на себя окружающую эту самую каптчу рутину. Интерфейс максимально упрощён - с внутренней стороны представлен функцией с говорящим названием do_stuff(file), принимающей в качестве параметра имя файла или file-like object (например StringIO(image_buffer) ) , в общем то, что поймёт Image.open(). С внешней стороны - пользовательский интерфейс представлен простейшим Tk окошком с вашей картинкой, полем ввода и счётчиком ожидающих в очереди картинок. Так же имеется в окошке многофункциональный переключатель :) В моём случае, многопоточной обработки, он был использован для передачи сигнала об остановке потоку. Да, модуль будет рад обслужить сразу множество ваших потоков.

Например, для следующей картинки:

Captcha image

имеем такой результат:

Script result

$ python captcha_dialog.py  
('dvcv', 0)

собственно код - inside

 continue reading

Hello world

Как повелось, запуск блога сопровождается первым, наверное самым бессмысленным постом. Назван в лучших традициях программирования. В общем, велкам!

P.S.Поздравляю talmuth с наступившим днём рожденья!