Pull to refresh
1
0
Станислав Гинзбург @Ustas4

BI программист

Send message

Парсер лучших за сутки статей habr(а) на Python. Очень подробно и просто

Level of difficultyEasy
Reading time3 min
Views13K

Парсинг лучших статей дня с habr

Всем привет, сегодня я расскажу, как можно довольно просто написать парсер на примере сайта habr для сбора лучших статей дня в виде json файла, в формате, "Название статьи": "ссылка".

Читать далее
Total votes 5: ↑4 and ↓1+5
Comments14

Кофеиновая трилогия. Часть 2. Сколько можно пить кофе и когда?

Level of difficultyEasy
Reading time6 min
Views26K

Те, кто говорят, что кофе надо пить меньше, и те, которые говорят, что кофе надо пить больше правы в одном. Кофе надо пить. Вопрос только в том, сколько можно пить кофе, чтобы получать от него преимущества, и избегать негативных последствий? Первая часть доступна по ссылке.

Читать далее
Total votes 33: ↑29 and ↓4+31
Comments132

5 неочевидных возможностей FastAPI: упрощаем работу с бэкендом на Python

Level of difficultyMedium
Reading time11 min
Views23K

Почти все, с чем мы сталкиваемся в интернете, имеет отношение к API, а точнее к версиям этого программного интерфейса, использующим для работы HTTP-запросы. Когда мы хотим узнать прогноз погоды, интерфейс браузера или мобильного приложения вызывает API Яндекс.Погоды или API Gismeteo. Когда прокладываем кратчайший маршрут из одного места в другое, Яндекс.Карты вызывают соответствующее API.

Пользовательские API-интерфейсы могут быть реализованы на Python с использованием нескольких фреймворков. В этой статье остановимся на особенностях работы с одним из самых популярных вариантов — платформой FastAPI, библиотеки которой активно используют такие технологические гиганты, как Microsoft, Netflix, Uber. Речь пойдет о некоторых расширенных функциях FastAPI, которые могут использовать в своих проектах те разработчики, у кого уже есть базовые знания о фреймворке.

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments2

Создаем диаграмму миграций Django проекта

Level of difficultyMedium
Reading time13 min
Views2.9K

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

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

Итак приступим
Total votes 3: ↑3 and ↓0+3
Comments3

5 лайфхаков Python, которые сделают ваш код более читабельным и элегантным

Reading time3 min
Views30K

Привет, Хабр! В этой статье я продемонстрирую 5 трюков Python на понятных для новичков примерах, которые помогут вам писать более элегантный Python код в вашей повседневной работе.

Читать далее
Total votes 32: ↑23 and ↓9+17
Comments22

Как поместить весь мир в обычный ноутбук: PostgreSQL и OpenStreetMap

Reading time29 min
Views26K

Когда человек раньше говорил что он контролирует весь мир, то его обычно помещали в соседнюю палату с Бонапартом Наполеоном. Надеюсь, что эти времена остались в прошлом и каждый желающий может анализировать геоданные всей земли и получать ответы на свои глобальные вопросы за минуты и секунды. Я опубликовал Openstreetmap_h3 — свой проект, который позволяет производить геоаналитику над данными из OpenStreetMap в PostGIS или в движке запросов, способном работать с Apache Arrow/Parquet.

Первым делом передаю привет хейтерам и скептикам. То что я разработал — действительно уникально и решает проблему преобразования и анализа геоданных используя обычные и привычные инструменты доступные каждому аналитику и датасаенс специалисту без бигдат, GPGPU, FPGA. То что выглядит сейчас простым в использовании и в коде — это мой личный проект в который я инвестировал свои отпуска, выходные, бессонные ночи и уйму личного времени за последние 3 года. Может быть я поделюсь и предысторией проекта и граблями по которым ходил, но сначала я все же опишу конечный результат.

Первый пост не претендует на монографию, начну с краткого обзора...

Читать далее
Total votes 79: ↑79 and ↓0+79
Comments22

Сводные таблицы в Pandas — швейцарский нож для аналитиков

Reading time3 min
Views40K

Сводные таблицы хорошо известны всем аналитикам по Excel. Это прекрасный инструмент, который помогает быстро получить различную информацию по массиву данных. Рассмотрим реализацию и тонкости сводных таблиц в Pandas.

Читать далее
Total votes 10: ↑7 and ↓3+7
Comments11

Допинг для аналитики: почему стоит обратить внимание на Apache Zeppelin

Reading time6 min
Views37K
Все рано или поздно приходят к аналитике за данными. В больших многопользовательских играх (да и синглплеере) без этого уже вообще никуда. Сколько пользователей предпочитают новый режим; где слабые места монетизации; куда смотреть геймдизайнерам, чтобы повысить вовлеченность игроков; и еще миллион вещей — подсчитывается вообще всё. И всё это влияет на решения, которые потом принимают разработчики.

А вот внедряют аналитику все по-разному: кто-то покупает сторонние решения (просто, но негибко), кто-то пишет под себя (долго и дорого), а кто-то пока просто считает несколько базовых метрик силами программистов и не заморачивается.

Поэтому я расскажу об инструменте, который будет полезен для всех. Кто только начинает выстраивать аналитику — сможет «на коленке» создать систему с нуля, а компании с уже готовыми решениями — «бустануть» свой подход.
Читать дальше →
Total votes 42: ↑42 and ↓0+42
Comments22

Как подсветить временные отрезки на графиках

Reading time5 min
Views4.8K

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

Читать далее
Total votes 17: ↑17 and ↓0+17
Comments0

6 Python декораторов, которые значительно упростят ваш код

Reading time5 min
Views58K

"Простое лучше сложного".

Лучшая функция Python, которая применяет эту философию из "дзен Python", - это декоратор.

Декораторы могут помочь вам писать меньше кода для реализации сложной логики и повторно использовать его повсюду.

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

Болтать не буду. Давайте посмотрим на отобранные мной 6 декораторов, которые покажут вам, насколько элегантен Python.

Читать далее
Total votes 61: ↑57 and ↓4+69
Comments26

Лучшие новые библиотеки Python за 2022 год

Reading time10 min
Views34K

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

Читать далее
Total votes 21: ↑20 and ↓1+23
Comments14

Pyspark. Анализ больших данных, когда Pandas не достаточно

Reading time4 min
Views37K

Pandas - одна из наиболее используемых библиотек Python с открытым исходным кодом для работы со структурированными табличными данными для анализа. Однако он не поддерживает распределенную обработку, поэтому вам всегда придется увеличивать ресурсы, когда вам понадобится дополнительная мощность для поддержки растущих данных. И всегда наступит момент, когда ресурсов станет недостаточно. В данной статье мы рассмотрим, как PySpark выручает в условиях нехватки мощностей для обработки данных.

Ну что же, приступим...

Читать далее
Total votes 6: ↑5 and ↓1+5
Comments4

Как получить все сообщения через логическую репликацию Postgres

Reading time7 min
Views3.4K

В одной из предыдущих статей я описал Push-based Outbox Pattern (шаблон исходящих сообщений на основе push с логической репликацией Postgres). Идея заключается в том, чтобы сохранить исходящее сообщение (например, событие) в той же транзакции базы данных вместе с изменением состояния. Благодаря этому мы гарантируем, что сообщение не будет потеряно, а наш бизнес-процесс будет продолжаться и станет согласованным.

Postgres может помочь и проинформировать нас, когда добавляется новое сообщение. Мы можем использовать встроенный механизм журнала упреждающей записи (WAL, Write-Ahead Log) вместе с логической репликацией.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments0

Перевод книги Hands-On Selenium WebDriver with Java. Boni Garcia

Reading time7 min
Views4.2K

Hands-On Selenium WebDriver with Java. Boni Garcia (Wait Strategy chapter/ Глава стратегия ожидания).

В марте этого года вышла книга Бони Гарсия о Selenium WebDriver. 

Ниже приведена глава, посвященная ожиданиям в Selenium. В планах сделать максимально полный перевод этой замечательной книги, думаю его делать по главам, в том порядке, который мне будет казаться интересным и полезным.

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments0

Git for Windows: работа с параметром core.autocrlf

Reading time9 min
Views23K

Одна из настроек программы (системы управления версиями) «Git» называется «core.autocrlf». В этой статье я на практическом примере описываю, что происходит при каждом из трех возможных значений этой настройки. После этого я делаю выводы о том, для чего эта настройка нужна и в каких ситуациях какие ее значения можно использовать.

Всё описанное происходит в операционной системе «Windows 10». Работу с «Git» я показываю на примере работы из командной строки в программе «PowerShell» версии 7. Используемый дистрибутив «Git» называется «Git for Windows».

Читать далее
Total votes 12: ↑10 and ↓2+10
Comments10

Учимся создавать пакеты Python

Reading time8 min
Views45K
imageПочему важно уметь создавать пакеты Python?
• Пакеты легко устанавливаются (pip install demo).
• Пакеты упрощают разработку (Команда pip install -e устанавливает ваш пакет и следит за тем, чтобы он сам обновлялся в ходе всего процесса разработки).
• Пакеты легко запускать и тестировать (from demo.main import say_hello, а затем тестируем функцию).
• Пакеты легко версионировать, при этом вы не рискуете нарушить работу кода, зависящего от этого пакета (pip install demo==1.0.3).
Читать дальше →
Total votes 20: ↑18 and ↓2+24
Comments14

Как настроить python в Linux под свой проект?

Reading time4 min
Views38K

Привет, Хабр! Меня зовут Дмитрий Алексеев, я Data Scientist и являюсь участником профессионального сообщества NTA. Сегодня расскажу как использовать python и Linux «в связке», и как это поможет облегчить вам жизнь.

Читать далее
Total votes 21: ↑9 and ↓12+1
Comments16

Почему в Python плохой ООП

Reading time10 min
Views38K

В Python ужасный ООП. Кликбейтный тезис, который имеет право на существование. Есть много языков, где ООП представлен не в самом классическом виде, ну или так принято считать. Прототипные JavaScript и Lua, Golang с прикреплением методов и прочие. Но «не такой как все» всегда ли синоним слова «неправильный»?  С чего мы вообще вязли, что ООП в Python не такой каким должен быть ООП? Что вообще является точкой отсчёта «правильности» ООП? Smalltalk или Simula 67? Вроде бы объектно-ориентированное программирование – это просто парадигма.. или уже догма?

Читать далее
Total votes 35: ↑14 and ↓21-3
Comments78

Information

Rating
Does not participate
Location
Лод, Хамеркац, Израиль
Registered
Activity