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

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE

     23.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

UI-покрытие как в мечтах: раскрашиваем сайт в реальном времени на основе автотестов

Как понять, что реально делают ваши UI автотесты? ui-coverage-tool — это инновационный инструмент нового поколения, не имеющий аналогов. Он визуализирует покрытие прямо в браузере, работая с реальным приложением. История по каждому элементу, фильтры по действиям, динамика и полная наглядность — всё, чтобы не просто тестировать, а понимать и улучшать.

     24.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Часть 1. Как я производство автоматизировал: от «я всё делаю руками» к «система уже всё сделала»

Ручная проверка модулей контроля питания отнимала 4 часа на устройство. Я собрал стенд на Python, сократив время до 75 минут на 5 устройств. В статье: как превратить неттоп в мозг системы, избежать «фейерверков» из реле и заставить операторов пить кофе вместо того чтобы работать!

     23.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Не доверяйте groupby().first()

Сегодня рассмотрим, почему groupby().first() в pandas — не такая уж безопасная и очевидная штука, как может показаться. Особенно когда нужно достать первую строку группы в точности, как она была в датафрейме — с NaN, с порядком, без сюрпризов.

     23.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Обработка геоданных для ML-задач. Часть 3: агрегирование данных и оценка пространственных шаблонов

Пространственное агрегирование помогает контролировать степень детализации данных в зависимости от пространственных характеристик отдельных записей. Эта операция может быть полезна, если вы хотите сравнить разные регионы по конкретному параметру, (например, плотность населения или динамика продаж), оценить значение признака на единицу площади (скажем, среднюю выручку магазинов на квадратный километр) или преобразовать набор точек в растровые пространственные данные.

     23.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Вторая жизнь для ретроноутбука. Пишем клиент Ollama на Python + Tkinter и Delphi 7 для Windows Vista

Салют, %USERNAME%. Признаюсь, я очень люблю старые лэптопы ThinkPad. Но в современных условиях, когда главным инструментом пользователя стал веб-браузер, эта система безнадежно устарела. И тут ко мне пришла безумная идея: а что, если подарить такому ноутбуку вторую жизнь и дать возможность работать с современными нейросетями?

     23.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи
     23.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Год с uv — инструментом управления Python-проектами: плюсы, минусы и стоит ли переходить

В статье — честный разбор сильных и слабых сторон uv, его отличий от других менеджеров окружений, реальных ограничений и сценариев, где он работает особенно хорошо.

     23.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

FastOpenAPI: автодокументация OpenAPI для разных фреймворков на Python

Это инструмент, который приносит удобный стиль маршрутизации FastAPI и автоматическую документацию OpenAPI в целый ряд Python-фреймворков.

     22.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

UI автотесты на Python с запуском на CI/CD и Allure

Разбираем, как писать масштабируемые и читаемые UI автотесты на Python с использованием паттернов PageObject, PageFactory и PageComponent. Разберем на атомы как устроены эти подходы, когда их применять и чем они отличаются. Всё это — на примере тестового проекта UI Course с CI/CD и наглядными отчетами в Allure.

     22.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Распознавание капчи GeeTest: как обойти сложную антибот-систему

GeeTest — один из продвинутых представителей антибот-систем, который сочетает в себе головоломки для пользователя и анализ его поведения. Я решил подробно рассмотреть распознавание капчи GeeTest в условиях боевых реалий и разобраться, как обойти GeeTest капчу различными методами. 

     22.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Как создавать A/B-тесты SMS-рассылок с нейросетью DeepSeek

В этой статье поможем владельцам бизнесов и маркетологам в два клика с помощью нейросети получить хорошие тексты для A/B-тестирования SMS-рассылок и разослать выбранные варианты контактам из CRM.Для генерации текстов используем API DeepSeek,

     22.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Личный ИИ-ассистент на ваших данных. Часть 2: Веб-интерфейс, авторизация и стриминг ответов от ИИ

В этой части статьи мы шаг за шагом превращаем консольную заготовку из первой части в полноценный веб-сервис: — реализуем авторизацию — создаём веб-чат с выбором нейросети — интегрируем всё через FastAPI — готовим к деплою

     20.04.2025       Выпуск 592 (14.04.2025 - 20.04.2025)       Статьи

Game Engine 3 — оболочка для визуального программирования игр на Python (от идеи до реализации)

Сегодня я хочу рассказать о своём проекте — «Game Engine 3», программной оболочке для создания двумерных игр и приложений.Game Engine 3 — это инструмент для создания 2D‑игр с физикой и анимацией. С открытым исходным кодом, интуитивным редактором визуального программирования на основе нодов и возможностями работы с графикой, физикой и анимацией, он подходит как для новичков, так и для профессионалов. В этой статье разберем, что делает эту оболочку уникальной.

     20.04.2025       Выпуск 592 (14.04.2025 - 20.04.2025)       Статьи

Простой пример использования в ПЛК нейросетевого контроллера

Современный мир движется к объединению технологий: промышленной автоматизации и искусственного интеллекта. Но для меня, занимающегося программированием в сфере АСУ ТП, было трудно понять, как на ПЛК, с его скромными техническими характеристиками и средой Codesys или TIA Portal можно применить технологии ИИ. 

     20.04.2025       Выпуск 592 (14.04.2025 - 20.04.2025)       Статьи

Как обсчитать RFM-анализ за 5 шагов

RFM-анализ - это метод сегментации клиентов, основанный на их покупательской активности. С помощью RFM-анализа можно, во-первых, оценить доли клиентов в каждом из сегментов. Во-вторых, вспоминая постулат, что клиента легче удержать, чем привлечь. К пользователям, попавшими в разные сегменты, можно применять различные стратегии удержания / поощрения.

     20.04.2025       Выпуск 592 (14.04.2025 - 20.04.2025)       Статьи

Оповещение о РО через колонки Яндекса (Ну или в целом получение сигналов в УДЯ)

Система и алгоритм оповещения о ракетной опасности с использованием Яндекс Станций. Пользователь вручную создает сценарии для устройств «Умного дома Яндекса» с использованием «Лампочки», которая включается при сигнале о РО и выключается при сигнале ОТБОЙ.Стэк: Python, telethon, aiogram 3.x, mqtt, postgresql.

     20.04.2025       Выпуск 592 (14.04.2025 - 20.04.2025)       Статьи

Сводка от pythonz 13.04.2025 — 20.04.2025

А теперь о том, что происходило в последнее время на других ресурсах.

     20.04.2025       Выпуск 592 (14.04.2025 - 20.04.2025)       Статьи

Почему @patch из unittest.mock ломает вам тесты, если не указать autospec=True

Сегодня разберёмся, почему без autospec=True ваш безобидный @patch из unittest.mock может превратить зелёный репорт в мину замедленного действия. Смысл patch() прост: отрезаем внешний мир, подсовываем фейковый объект и гоняем логику изолированно. Но если не включить autospec, мок превращается в пластилин — к нему прилипает любой метод, любые аргументы, и тесты радостно хлопают ладоши, даже когда в коде опечатка или нарушена сигнатура.

     21.04.2025       Выпуск 593 (21.04.2025 - 27.04.2025)       Статьи

Некоторые особенности создания диаграммы Санки (Sankey Diagram) на Python библиотека plotly

Разбираемся как упаковывать данные в диаграмму Sankey, от этапа проектирования до сборки финальных кортежей.

     20.04.2025       Выпуск 592 (14.04.2025 - 20.04.2025)       Статьи