Все потоки
Поиск
Написать публикацию
Обновить
429.98

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Как я спарсил WebGL карту с Федерального сайта

Время на прочтение3 мин
Количество просмотров13K

Как я спарсил WebGL карту с Федерального сайта. Написал эту статью для тех, у кого похожая задача.

Читать далее

Как написать тысячу автотестов за пару дней

Время на прочтение6 мин
Количество просмотров9.9K

Меня зовут дядя Вова, я ведущий инженер по автоматизации тестирования и, как писал уже несколько раз, неизменный фанат Robot Framework. Даже когда-то контрибьютил в его исходный код и иногда помогаю новичкам в официальном slack-чате этого инструмента.

Но, как я уже упоминал в одной из статей, есть у него один пробел по сравнению с pytest — это отсутствие адекватной параметризации тестов. Справедливости ради, у Robot Framework есть надстройка, которая позволяет генерировать тесты на основе внешней таблицы. Но это не совсем то, что нам подходит.

После прошлой статьи многие спрашивали меня, как именно делается параметрическая генерация автотестов. В этой статье отвечу на вопрос.

Читать далее

Как оптимизировать проект Data Science с помощью Prefect

Время на прочтение10 мин
Количество просмотров8.5K

Есть ли способ оптимизировать рабочий процесс проекта Data Science всего в несколько строк кода? Да. Это Prefect. Делимся кратким руководством по работе с этим инструментом, пока у нас начинается флагманский курс Data Science.

Читать далее

Нагрузочное тестирование: как прошли выступления X5 QA meetup #2 и о чём мы говорили

Время на прочтение1 мин
Количество просмотров2.6K

Привет! Недавно мы анонсировали наш второй QA meetup. 17 ноября он состоялся. Мы говорили о том, как построить нагрузочное тестирование, как автоматизировать рутину в нагрузке, какой инструмент нагрузки использовать для Python и как нагружать SAP быстро. Теперь мы готовы поделиться записью выступлений и презентациями к ним.

Читать далее

EMM Всемогущий: как подчинить 170 тысяч корпоративных устройств?

Время на прочтение8 мин
Количество просмотров8.8K

Всем привет! Меня зовут Илья Никулин, с марта 2021 года я руковожу командой по развитию EMM-системы «Магнита». Каждый, кто решает рабочие задачи с помощью мобильных устройств, знает, что для большой компании важно «не тормозить»: быстро доставлять точную информацию покупателям, сотрудникам, поставщикам. А еще все корпоративные устройства нужно постоянно обслуживать. Именно Enterprise Mobility Management-системы позволяют удаленно управлять мобильными устройствами, отслеживать их работу и получать безопасный доступ к корпоративным информационным ресурсам.

Запустить EMM-систему

Мониторинг скорости интернет каналов в Zabbix

Время на прочтение6 мин
Количество просмотров28K

Всем привет!

Я работаю в крупной компании федеральной компании, у которой более 2000 объектов. Для большинства задач необходим стабильный канал интернета с высокой скоростью. Поэтому нам необходимо было сделать систему, которая позволяет отслеживать скорость работы интернет каналов на этих объектах, и в случае проблем информировала бы нас об этом.

Собрав все инструменты, что у меня есть, я решил сделать мониторинг скорости интернета на базе Zabbix. Для замеров скорости используется утилита iperf3. Весь код сделан на python.

Читать далее

Электронная медицинская карта -собираем анализы

Время на прочтение6 мин
Количество просмотров8.4K

Небольшой пост о том, как собрать в единый pdf все записи о сданных анализах в поликлинике из электронной медицинской карты. Данные располагаются на сайте (https://lk.emias.mos.ru/medical-records), однако пользоваться ими неудобно, так как на сайте все свалено в несколько pdf куч. И, чтобы посмотреть, все позиции по анализам, сданным, например, в один день, необходимо заходить в каждую из этих куч и смотреть только эту одну позицию. Итого можно посмотреть до 15 pdf с анализами, сданных в один день. А уж если хочется за несколько дней посмотреть результаты анализов, умножай на n и затем вручную сравнивай!

В качестве опции также будет осуществлен вывод табличных данных из pdf в excel.
Читать дальше →

Симуляция односерверных очередей на python

Время на прочтение5 мин
Количество просмотров3.8K

Концептуально модель симуляции может состоять из 5 элементов – сущностей, атрибутов, переменных состояния, событий и действий.

Читать далее

Голосовое управление

Время на прочтение8 мин
Количество просмотров13K

Алиса, Siri, Маруся - это далеко не весь список проектов в области голосовых помощников. С каждым днем проектов становиться больше, а функционал шире и кажется настал тот момент, когда всерьез можно подумать о переводе компьютера на голосовое управление.

В рамках данного цикла статей я разберу создание голосового ассистента, работающего локально на вашем компьютере и имеющего широкий функционал, начиная с "запусти музыку" и заканчивая "создай новый проект в PyCharm".

Читать далее

Kaggle titanic dataset. Анализ данных с помощью SQL запросов

Время на прочтение28 мин
Количество просмотров13K

Не смотря на то, что Python был бы предпочтительным инструментом для исследовательского анализа, я хотел посмотреть, смогу ли я провести весь исследовательский анализ с помощью SQL-запросов. Моя цель - показать, насколько сильно может помочь SQL для рабочего процесса.

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

Читать далее

Дифференциальная приватность для моделей PyTorch с библиотекой Opacus

Время на прочтение7 мин
Количество просмотров1.2K

Эта статья носит прикладное значение и не объясняет все подробности дифференциальной приватности. Цель статьи - познакомить читателя с библиотекой Opacus и показать, как изменять классификатор без потерь в эффективности обучения. 

Анонимизация не всегда эффективна

Приватность - сложная вещь.

Как показала практика Netflix в соревновании Netflix Prize простой анонимизации набора данных недостаточно. 

Мы разберем, как использовать библиотеку, на примере обучения модели классификации PyTorch набору MNIST с использованием DP-SGD

Читать далее

Асинхронному django быть. Эксклюзивно для Хабра

Время на прочтение7 мин
Количество просмотров13K

Здравствуйте, читатели хаба про django. Эта статья о фреймворке для перфекционистов с дедлайнами, и о том, можно ли добавить в него асинхронность. Некоторые в курсе, что со стороны Django Foundation также есть некоторые усилия в этом направлении. Например, есть [DEP-09](https://github.com/django/deps/blob/main/accepted/0009-async.rst), который примерно очерчивает границы будущих изменений. Причём, некоторые преобразования, на взгляд авторов, слишком объёмные, и про них явно говорится, что они выходят за рамки DEP. Такой, например, является задача сделать django orm асинхронной. Учитывая, что, по любым меркам, django orm - это больше 50% всего django, а на мой взгляд - его главная часть, DEP-09 мне кажется какими-то непонятными полумерами.

У меня есть альтернативное предложение по добавлению асинхронности, в какой-то степени, более радикальное. Такое, для которого не нужен DEP. В общем, я хочу сделать новую версию, которая заменит собой django. Не то чтобы это была самоцель: главное, я хочу выпустить асинхронную версию django, но синхронная будет тоже поддерживаться, так что традиционный django вряд ли будет очень нужен. К слову, если даже выбирать между только синхронной и только асинхронной версией, то только асинхронная имеет явное преимущество, на мой взгляд. Кстати, я хочу портировать только django orm, а не весь django. То есть, именно ту часть, которая выходит за рамки DEP-09. Итак, встречайте.

Читать далее

Regex for lazy developers

Время на прочтение9 мин
Количество просмотров24K

Регулярные выражения для ленивых людей?!

Regex – это модуль вашего языка программирования который позволяет работать со сложными и большими строками просто! Давайте разбираться в них вместе. Приятного прочтения ;)

Читать далее

Ближайшие события

SFTP под root-ом в WinSCP для удаленной отладки(PyCharm)

Время на прочтение3 мин
Количество просмотров5.8K

Этот пост предназначен в первую очередь для новичков в разработке, впервые столкнувшихся с необходимостью запуска скриптов из-под root-а, взаимодействующих с ресурсами/устройствами, доступ до которых возможен только с сервера приложений, находящимся за NAT-ом. Частая ситуация в телекоме.

Читать далее

Поиск названия компании с использованием Python и контекстно-свободных грамматик

Время на прочтение5 мин
Количество просмотров5.7K

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

Читать далее

Возможности интеграции Counter-Strike: Global Offensive

Время на прочтение9 мин
Количество просмотров16K
Image by andytb under license CC BY-SA 2.0
Counter-Strike: Global Offensive — современная версия старой доброй «CS 1.6». За двадцать лет развития серии технологии сильно изменились. Ранее соревнования по CS проходили в конференц-залах, а информация, доступная наблюдателю, была крайне скудна. Сейчас крупные соревнования по Counter-Strike проводятся на огромных стадионах, а количество выводимой на экраны информации зашкаливает.

Мне стало интересно, как организован экспорт игрового состояния в сторонние системы, например, для управления сценическим освещением. В этой статье я расскажу про то, как это работает, и покажу, как можно превратить телефон на Android в устройство вывода игрового состояния.
Читать дальше →

Python: Логируем как профессионалы

Время на прочтение13 мин
Количество просмотров54K

Часто вижу, что помимо обработки исключений, люди мучаются кое с чем еще, а именно с логированием.

Большинство людей не знают, что писать в логи, поэтому решают логировать все, что угодно, думая, что все подряд – это в любом случае лучше, чем ничего, и, в конечном итоге, просто создают шум. А шум – это информация, которая никак не помогает вашей команде понять, в чем дело и как решить проблему.

Читать далее

Создание API на основе протокола MTProto

Время на прочтение9 мин
Количество просмотров8.7K

В уже  далеком 2019 Telegram объявил конкурс на создание веб-версии своего мессенджера, в котором мне удалось поучаствовать. По итогу у меня осталась библиотека, которая может работать с API Telegram по протоколу MTProto. Полученный опыт вдохновил меня реализовать протокол MTProto для бэкенда. Разработку вел на python, так как я этот язык хорошо знаю и был уверен, что смогу на нем реализовать свою идею. Для удобства использовал библиотеку aiohttp для соединения по web-socket’у, а для описания структур использовал typings и dataclass.

Читать далее

Многопоточный Python на примерах: как правильно хранить настройки приложения

Время на прочтение14 мин
Количество просмотров36K

Если опустить первое и самое главное предубеждение относительно питонячьей многопоточности у большинства программистов — что её не существует из-за GIL, — то остается другое, и, наверное, вполне достоверное: что многопоточность — это сложно, и нам этого, пожалуйста, не надо. И знаете что? Так оно и есть. Многопоточность — это сложно, особенно когда выбираешься за пределы стандартных руководств и попадаешь со своей многопоточной поделкой в реальный мир. И, возможно, вам не нужно. Ни здесь, ни далее я не буду обсуждать целесообразность написания многопоточного кода на Python и сразу перейду к тому, как это делать.

Так как же?

Находим нарушителей на миллионы рублей при помощи борщевика и Python

Время на прочтение6 мин
Количество просмотров10K

В октябре Минимущества Московской области отчиталось, что за 2021 год был начислено 410 млн рублей штрафов за борщевик Сосновского в Подмосковье. В этой заметке расскажу, как сейчас собирают штрафы в МО, и как мы сделали свой прототип программы для поиска владельцев участков с растущим борщевиком Сосновского.

Читать далее

Вклад авторов