IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте нас в Telegram

     03.06.2016       Выпуск 128 (30.05.2016 - 05.06.2016)       Статьи

Как использовать Python для «выпаса» ваших неструктурированных данных

В последнее время мы прорабатываем самые разные темы, связанные с языком Python, в том числе, проблемы извлечения и анализа данных. Поэтому если вы еще не знаете, что такое скрепинг, извлечение неструктурированных данных, и как привести хаос в порядок, предлагаем почитать перевод интересной статьи Пита Тамисина (Pete Tamisin), рассказывающего, как это делается на Python. Поскольку статья открывает целую серию постов автора, а мы решили пока ограничиться только ею, текст немного сокращен.

     01.06.2016       Выпуск 128 (30.05.2016 - 05.06.2016)       Статьи

Шлюзы Intel для интернета вещей: отправка сообщений MQTT-брокеру с использованием Python

Сегодня настроим шлюз для интернета вещей на отправку сообщений MQTT-брокеру (серверу) с использованием Python-скрипта. Сообщения будет принимать компьютер, подписанный на соответствующую тему на брокере. После оформления подписки, сообщения, опубликованные с этой темой, будут поступать на компьютер. В процессе изучения этого материала вы выполните следующие шаги: Установка на компьютер MQTT-клиента на Python. Настройка MQTT-брокера. Установка MQTT-клиента на шлюз, основанный на процессоре Intel Core, Atom или Quark. Создание и запуск скрипта, отправляющего MQTT-сообщения со шлюза брокеру, которые, в конечном счёте, поступят на компьютер. 

     30.05.2016       Выпуск 128 (30.05.2016 - 05.06.2016)       Статьи

Система сбора измерений на примере метеостанции

Казалось бы, каждый, кто осваивает ардуино, первым делом конструирует или повторяет прибор для измерения температуры и(или) прочих параметров окружающей среды. Только большинство подобных конструкций, к сожалению, мало применимы в домашнем хозяйстве — в качестве тренировки сгодится, а пользы нет. Попробуем исправить эту недоработку. В статье расскажу о создании комплекса для измерения и хранения любых данных на примере сбора показаний датчиков температуры, влажности воздуха и атмосферного давления. Начну с требований к прибору и описания протокола обмена, закончу web-службой для получения данных из БД. Подробных выкладок и пошаговых руководств не будет, но будет немного теории и много кода. 
 

     27.05.2016       Выпуск 127 (23.05.2016 - 29.05.2016)       Статьи

Статистика распределения доменов по AS, IP, NS, MX и прочим параметрам

Давным-давно перестал работать 1stat.ru — откровенно говоря, для нас это была трагедия (сейчас вроде он как-то работает).

Рабочий день обычно начинался с чашечки кофе и приятного просмотра значений прироста доменов. Конечно же, такие метрики не показывают ни успешность компании, ни ее капитализацию, ни тип клиентов, которые размещаются у компании. Но, несмотря на это, косвенно можно оценить динамику роста или деградации компании — если количество доменов на NS серверах растет, а не падает — это хорошо. Как показала практика, это, так или иначе, отражает положение дел на рынке.

     26.05.2016       Выпуск 127 (23.05.2016 - 29.05.2016)       Статьи

Запись входящих звонков

Несколько месяцев назад мой знакомый попросил помочь решить вопрос с записью входящих звонков. Все необходимое или было в наличии, или обещал предоставить. Если интересно, мой опыт реализации на python вместе с кодом под катом. 

     25.05.2016       Выпуск 127 (23.05.2016 - 29.05.2016)       Статьи

Осторожно — Бульдозер (сборка apk пакетов в Kivy) Kivy

Фух! Только что выбрался из под траков этого чудовища. А кое-кому повезло меньше. Как и было обещано в предыдущей статье, сегодня мы расскажем, как собираются apk пакеты для программ, написанных с использованием фреймворка Kivy при помощи утилиты Buildozer.

     25.05.2016       Выпуск 127 (23.05.2016 - 29.05.2016)       Статьи

Расширяем фреймворк Kivy пакетом XPopup Kivy

Не так давно передо мной встала задача в сжатые сра сроки написать работающий прототип GUI-приложения, которое без лишней строки кода хорошо дружило бы как с Windows, так и с OS X. Выбор пал на змеиный фреймворк Kivy, который с легкостью решал вышесказанное. А также, в базовой комплектации имел весь необходимый инструментарий для реализации приложения.

Ну… почти весь. Под катом расскажу что не так и как это побороть.

     25.05.2016       Выпуск 127 (23.05.2016 - 29.05.2016)       Статьи

Зачем питонисту Bower? Питонисту нужен bowerer Bower

Немного размышлений на тему необходимости Bower и Node.js в проектах на Python.

     24.05.2016       Выпуск 127 (23.05.2016 - 29.05.2016)       Статьи

Обработка данных в iPython notebook для задач SEO data analysis IPython Jupyter

При выполнении аналитических задач SEO, SMM, маркетинга мы столкнулись с непомерно растущим количеством инструментов для обработки данных. Каждый заточен под свои возможности или доступность для пользователя: Excel и VBA, сторонние SEO-инструменты, PHP и MySQL, Python, C, Hive и другие. Разнообразные системы и источники данных добавляют проблем: счетчики, рекламные системы, CRM, инструменты вебмастера Яндекса и Google, соцсети, HDFS. Необходим инструмент, совмещающий в себе простоту настройки и использования, модули для получения, обработки и визуализации данных, а также работы с различными типами источников. Выбор пал на iPython notebook (с недавних пор Jupyter notebook), представляющий собой платформу для работы со скриптами на 40 языках программирования. Широкое распространение платформа получила для научных вычислений, среди специалистов по обработке данных и машинному обучению. К сожалению для автоматизации и обработки данных маркетинговых задач Jupyter notebook используется крайне редко.

     24.05.2016       Выпуск 127 (23.05.2016 - 29.05.2016)       Статьи

Pillow-SIMD

 

Pillow-SIMD — это «форк-последователь» библиотеки работы с изображениями Pillow (которая сама является форком библиотеки PIL, ныне покойной). «Последователь» означает, что проект не становится самостоятельным, а будет обновляться вместе с Pillow и иметь ту же нумерацию версий, только с суффиксом. Я надеюсь более-менее оперативно выпускать версии Pillow-SIMD сразу после выхода версий Pillow.

     23.05.2016       Выпуск 127 (23.05.2016 - 29.05.2016)       Статьи

API к zadarma.com на perl и python

У zadarma.com есть API к их сервисам на языке php, но на моих серверах этот язык отсутствует. Ставить php ради обращений к задармам желания не было. Поискал в интернете не нашел ничего для perl и python. Написал для себя, что получилось под катом. 

     22.05.2016       Выпуск 126 (16.05.2016 - 22.05.2016)       Статьи

Python: Мышление программиста

Небольшая статья о том, как можно решить одну и ту же задачу несколькими способами. Предназначена для новичков в Python и программировании.

В качестве примера взят простой случай — реализация диалога подтверждения какой-либо операции. Программа задает пользователю вопрос Вы уверены? [Д/н (Y/n)]:, на который требуется ответить, введя одно из восьми допустимых значений (Д, д,Н, н, Y, y, N, n).

     20.05.2016       Выпуск 126 (16.05.2016 - 22.05.2016)       Статьи

Может ли машина научить английскому языку?

Биткоин-бот имени Дональда Трампа, победа AlphaGo над одним из сильнейших игроков в го Ли Седолем, изучение английского языка — что объединяет эти три ситуации? Везде в той или иной степени присутствует машинное обучение. Компьютер может не только генерировать сюжетную канву, как Scheherazade, или отвечать на письма вместо пользователей, как Google Smart Reply, но и создавать идеальные учебники английского языка. Читать дальше →

     20.05.2016       Выпуск 126 (16.05.2016 - 22.05.2016)       Статьи

Удаляйте свой мертвый код

Пост «Удаление кода» Неда Бэтчелдера (Ned Batchelder) недавно появился на HN, хотя изначально он был написан в 2002 году. Здесь я хочу повторить несколько мыслей Неда, и занять более решительную, чем он, позицию: удаляйте код, как только вы замечаете, что он больше не нужен, без лишних вопросов. Я также предложу некоторые советы из окопов, как определять кандидатов в мертвый код.

     18.05.2016       Выпуск 126 (16.05.2016 - 22.05.2016)       Статьи

Распознаем лица на фото с помощью Python и OpenCV opencv

В этой статье я хотел бы остановиться на алгоритмах распознавания лиц, а заодно познакомить вас с очень интересной и полезной библиотекой OpenCV. Уверен, что этот материал окажется полезным для новичков в этой области.
Что нам понадобится:
• Установленный Python 2.7 с библиотеками NumPy и PIL
• OpenCV 2-й версии
Здесь ссылка на материал по установке всех необходимых компонентов. Установка всего необходимого не составит труда.

     11.05.2016       Выпуск 125 (09.05.2016 - 15.05.2016)       Статьи

Использование python библиотеки Exscript для работы с оборудованием Cisco и Huawei по SSH

В работе Python приложения встала задача получать данные с сетевого оборудования и проводить его настройки удалённо, по SSH. Можно воспользоваться Paramiko, а можно не выдумывать велосипед и использовать основанную на нём библиотеку Exscript. Под катом — примеры кода для подключения и получения информации из команд. Ввиду отсутствия документации к Exscript этот материал может кому-нибудь здорово пригодиться.

     11.05.2016       Выпуск 125 (09.05.2016 - 15.05.2016)       Статьи

Тестовое задание. Проверка вхождения точки в произвольный полигон django frontend jquery python

Вводная Сразу оговорюсь кому может быть интересна данная публикация. Это начинающие Django + JQuery программисты, интересующиеся векторной графикой в браузере с использованием canvas. Или просто люди, получившие подобное задание. Итак, находясь в постоянном сканировании рынка труда своего региона, наткнулся на весьма интересную вакансию web-разработчика в достаточно известной местной компании. В описании вакансии было сказано, что нужен python+django разработчик. После отправки резюме получил тестовое задание которое гласило:

     07.05.2016       Выпуск 124 (02.05.2016 - 08.05.2016)       Статьи

Как использовать API сайта, когда его нет

В этой статье мы разберем, как получить и использовать API сайта, если по нему нет документации или оно еще не открыто официально. Руководство написано для новичков, которые еще не пробовали зареверсить простой API. Для тех же кто сам занимался подобным ничего нового здесь нет. Разбор проведем на примере API сервиса https://www.captionbot.ai/ который недавно открыл Microsoft (спасибо им за это). Многие могли прочитать о нем в статье на Geektimes. Сайт использует ajax запросы в формате JSON, поэтому скопировать их будет легко и приятно. Поехали! 

     06.05.2016       Выпуск 124 (02.05.2016 - 08.05.2016)       Статьи

Meduza.io: а как же лайки?

Как-то раз, читая новости на Медузе, я обратил внимание на то, что у разных новостей разное соотношение лайков из Facebook и ВКонтакте. Какие-то новости мегапопулярны на fb, а другими люди делятся только во ВКонтакте. Захотелось присмотреться к этим данным, попытаться найти в них интересные закономерности. Заинтересовавшихся приглашаю под кат! 

     05.05.2016       Выпуск 124 (02.05.2016 - 08.05.2016)       Статьи

Чем заменить ELK для просмотра логов? logging ELK sentry

Что обычно делает python-программист, когда его отправляют воевать с ошибкой?
Сначала он лезет в sentry. Здесь можно найти время, сервер, подробности сообщения об ошибке, traceback и, может быть, какой-нибудь полезный контекст. Затем, если этих данных недостаточно, программист идет c бутылкой к админам. Те залезают на сервер, ищут это сообщение в файловых логах, и, может быть, находят его и некоторые предшествующие ошибке записи, которые в редких случаях могут помочь в расследовании.
А что делать, если в логах только loglevel=ERROR, а ошибка настолько крута, что ее локализация требует сопоставления логики поведения нескольких различных демонов, которые запущены на десятке серверов?