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

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

     12.11.2018       Выпуск 256 (12.11.2018 - 18.11.2018)       Статьи

Как создать чат-бота для ВКонтакте, используя Python, Django и webhook

Возможно я плохо искал, но я не смог найти подробного руководства по созданию бота на python с применением фреймворка Django и подхода webhook, работающего на хостинге от российской компании. В большинстве материалов говориться о применении фреймворка Flask и использования бесплатных хостингов Heroku и PythonAnywhere. Опыт сообщества Хабр меня выручает, поэтому я решил в знак благодарности потратить время на написание данной статьи. Опишу полученный практический опыт, чтобы дать возможность всем кто в этом заинтересован сэкономить время и лучше понять как сделать бота на Python с применением фреймворка Django на своём хостинге, используя подход webhook.

     02.11.2018       Выпуск 254 (29.10.2018 - 04.11.2018)       Релизы
     26.10.2018       Выпуск 253 (22.10.2018 - 28.10.2018)       Статьи

Авторизация пользователей в Django через GSSAPI и делегация прав пользователя серверу Django

Недавно нам с коллегами понадобилось реализовать прозрачную (SSO) авторизацию в нашем проекте. Сейчас довольно мало информации по теме особенно на русском языке. По этой причине решено было поделиться с потомками реализацией подобного функционала.

Итак задача заключалась в следующем: необходимо было настроить прозрачную авторизацию через GSSAPI от пользователя на сервер, а так же иметь потом возможность от имени этого пользователя ходить в БД.

     24.10.2018       Выпуск 253 (22.10.2018 - 28.10.2018)       Статьи

Django - Урок 38. Использование BeatifulSoup 4 для очистки публикуемого контента от нежелательных html тегов

При развитии веб-сайта, на котором добавлена возможность писать комментарии или публиковать статьи, в которых разрешена html-вёрстка, важен механизм для очистки нежелательных html-тегов, в частности тегов script и style , поскольку вредоносные скрипты на качественном ресурсе точно не должны присутствовать. А также хорошо будет иметь возможность очистки стиля текста, особенно, если ресурс подразумевает единообразный стиль.

     23.10.2018       Выпуск 253 (22.10.2018 - 28.10.2018)       Видео

Артем Малышев - Django under microscope

Из доклада вы узнаете все подробности из жизни внутренних механизмов Django: от первого байта HTTP запроса до последнего байта ответа. Настоящая феерия от том, как работает парсер форм, как компилируется SQL, как реализован шаблонизатор для HTML, как управляется connection pool и т.д. Всё это в хронологическом порядке обработки WSGI объектов.

     23.10.2018       Выпуск 253 (22.10.2018 - 28.10.2018)       Статьи
     19.10.2018       Выпуск 252 (15.10.2018 - 21.10.2018)       Статьи
     17.10.2018       Выпуск 252 (15.10.2018 - 21.10.2018)       Видео

Изменение схемы таблиц без долгих блокировок в PostgreSQL

Во время многих операций по изменению схемы базы данных сервис не может корректно работать на запись. В докладе я расскажу о том, какие операции в PostgreSql требуют длительных блокировок и как мы в Формах Яндекс.Коннекта обеспечиваем почти стопроцентную доступность сервиса на запись во время выполнения таких операций. Также мы поговорим о Django-библиотеке, призванной автоматизировать некоторые из описанных процессов

     16.10.2018       Выпуск 252 (15.10.2018 - 21.10.2018)       Статьи

Интеграция с SAP ERP, на примере с Django-python, по протоколу oData(rest)

Всегда была интересна тема интеграции больших систем вроде SAP с небольшими, но более гибкими, так-сказать взять лучшее из того и другого.

В частности, в моем примере будет описана интеграция SAP ERP с Django.

     16.10.2018       Выпуск 252 (15.10.2018 - 21.10.2018)       Статьи
     10.10.2018       Выпуск 251 (08.10.2018 - 14.10.2018)       Статьи

Миграция схемы базы данных без даунтайма для postgresql на примере django

Хочу поделиться опытом написания миграций для postgres и django. Речь в основном пойдёт про postgres, django же здесь хорошо дополняет, так как из коробки имеет автоматическую миграцию схемы данных по изменениям модельки, то есть имеет довольно полный список рабочих операций по изменению схемы. Django можно заменить на любой любимый фрэймворк/библиотеку — подходы скорее всего будут похожи.

     09.10.2018       Выпуск 251 (08.10.2018 - 14.10.2018)       Статьи

Python: метапрограммирование в продакшене. Часть первая

Многие считают, что метапрограммирование в Python излишне усложняет код, но если использовать его правильно, то можно быстро и элегантно реализовать сложные паттерны проектирования. Помимо этого, такие известные Python-фреймворки, как Django, DRF и SQLAlchemy, используют метаклассы, чтобы обеспечить легкую расширяемость и простое переиспользование кода.

     02.10.2018       Выпуск 250 (01.10.2018 - 07.10.2018)       Статьи
     01.10.2018       Выпуск 250 (01.10.2018 - 07.10.2018)       Релизы
     01.10.2018       Выпуск 250 (01.10.2018 - 07.10.2018)       Релизы
     20.09.2018       Выпуск 248 (17.09.2018 - 23.09.2018)       Статьи
     14.09.2018       Выпуск 247 (10.09.2018 - 16.09.2018)       Статьи

Настраиваем Web Push Notifications использованием pywebpush шаг за шагом

Когда передо мной поставили задачу сделать черновой вариант push notifications, быстрый поиск показал, что на хабре уже есть много статей по настройке push notifications. Вот наиболее, на мой взгляд, годные:

Как работает JS: веб push-уведомления
Web PUSH Notifications быстро и просто924/
Service Workers. Web Push и где они обитают

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

Настройка уведомлений в итоге заняла три дня и мне кажется, что это несколько многовато. Надеюсь, моя статья поможет кому-то настроить push notifications за три часа вместо трех дней.
Проект, на котором я работаю, реализован на Django и описывать ход работы я буду применительно к этому фреймворку, но желающие легко адаптируют его к Flask или чему-либо еще.

Итак, погнали.