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

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

     11.05.2016       Выпуск 125 (09.05.2016 - 15.05.2016)       Статьи
     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)       Статьи

Scrapy + MonkeyLearn: текстологический анализ данных scrapy machine learning MonkeyLearn

Недавно мы сообщили о интеграции с MonkeyLearn, что позволило организовать машинное обучение Scrapy + Portia.

Поговорим о MonkeyLearn + Scrapy

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

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

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

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

The Descriptor Protocol и Python Black Magic

Автор рассмотрел интересный кусок кода:

    class A:
        def b(self):
            pass

    if A.b is A.b:
        print("Python 3")
    else:
        print("Python 2")
    

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

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

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

     07.05.2016       Выпуск 124 (02.05.2016 - 08.05.2016)       Статьи
     06.05.2016       Выпуск 124 (02.05.2016 - 08.05.2016)       Статьи
     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, а ошибка настолько крута, что ее локализация требует сопоставления логики поведения нескольких различных демонов, которые запущены на десятке серверов?

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