Настраиваем DAG в Airflow так, чтобы меньше о нем думать
Разработчик из Газпромбанка рассказывает, как запускать DAG в Airflow с кастомными параметрами. Автор раскрыл, как пользоваться встроенным редактором параметров (‘Trigger DAG w/config’) и как с этим помогают Airflow Variables + sorcery.
https://tprg.ru/Vuh0
#airflow
  
  
  
  
  
Разработчик из Газпромбанка рассказывает, как запускать DAG в Airflow с кастомными параметрами. Автор раскрыл, как пользоваться встроенным редактором параметров (‘Trigger DAG w/config’) и как с этим помогают Airflow Variables + sorcery.
https://tprg.ru/Vuh0
#airflow
👍5
  litestar для создания собственных API
Если вам посчастливилось создавать свой API, фреймворк предоставит следующие возможности:
— высокопроизводительная проверка и анализ данных;
— внедрение зависимостей;
— интеграция ORM;
— примитивы авторизации и проч.
Ссылка на репозиторий
#API
  
  
  
  
  
  Если вам посчастливилось создавать свой API, фреймворк предоставит следующие возможности:
— высокопроизводительная проверка и анализ данных;
— внедрение зависимостей;
— интеграция ORM;
— примитивы авторизации и проч.
Ссылка на репозиторий
#API
Облако слов
Одна из стадий EDA текстовых датасетов — определение самых частоиспользуемых слов. С этим поможет библиотека wordcloud.
Ссылка на репозиторий
#библиотека
  
  
  
  
  
  Одна из стадий EDA текстовых датасетов — определение самых частоиспользуемых слов. С этим поможет библиотека wordcloud.
Ссылка на репозиторий
#библиотека
Как лучше писать циклы на Python
На ZProger разобрали 4 метода, как лучше писать циклы, и как вообще обходиться без медленного for.
Видео
#лучшиепрактики
  
  
  
  
  
  На ZProger разобрали 4 метода, как лучше писать циклы, и как вообще обходиться без медленного for.
Видео
#лучшиепрактики
pdfplumber для извлечения текста с .pdf
Утилита, считывающая текст с документов на нескольких языках, включая русский:
Репозиторий
#OCR #библиотека
  
  
  
  
  
Утилита, считывающая текст с документов на нескольких языках, включая русский:
import pdfplumberwith pdfplumber.open("path/to/file.pdf") as pdf:    first_page = pdf.pages[0]    print(first_page.chars[0])Репозиторий
#OCR #библиотека
👍11❤🔥3
  Библиотеки воруют пользовательские данные
Компания Checkmarx's Supply Chain Security провела масштабное исследование с целью найти как можно больше уязвимостей. Примеры вредоносного кода можно найти в этой статье, а вот полный перечень потенциально опасных либ здесь.
Какой из перечисленных во второй ссылке библиотек вам доводилось пользоваться? Поделитесь в комментариях.
#библиотека
  
  
  
  
  
Компания Checkmarx's Supply Chain Security провела масштабное исследование с целью найти как можно больше уязвимостей. Примеры вредоносного кода можно найти в этой статье, а вот полный перечень потенциально опасных либ здесь.
Какой из перечисленных во второй ссылке библиотек вам доводилось пользоваться? Поделитесь в комментариях.
#библиотека
❤1👍1
  SQLiDetector для распознавания SQL-инъекций
Утилита использует regex для поиска потенциально опасных выражений в URL:
После проверки каждой из таких ссылок для уязвимых будет создан лог в отдельном файле.
Репозиторий
#библиотека
Утилита использует regex для поиска потенциально опасных выражений в URL:
https://example.com?file=123'&username=eslam3klhttps://example.com?file=aykalam&username=123'После проверки каждой из таких ссылок для уязвимых будет создан лог в отдельном файле.
Репозиторий
#библиотека
👍4
  Задача о лайкнувших
Люди ставят лайки постам в соцсетях, и мы хотим создать текст, который должен отображаться рядом. Реализуйте функцию, которая принимает массив, содержащий имена отреагировавших людей.
Она должна возвращать текст, как в примерах:
#задача
  
  
  
  
  
Люди ставят лайки постам в соцсетях, и мы хотим создать текст, который должен отображаться рядом. Реализуйте функцию, которая принимает массив, содержащий имена отреагировавших людей.
Она должна возвращать текст, как в примерах:
[]  -->  "no one likes this"["Peter"] -->  "Peter likes this"["Jacob", "Alex"] -->  "Jacob and Alex like this"["Max", "John", "Mark"] -->  "Max, John and Mark like this"["Alex", "Jacob", "Mark", "Max"] -->  "Alex, Jacob and 2 others like this"#задача
🤣5⚡4👀1
  Как использовать Cython в Jupyter Notebooks
Интересный англоязычный гайд для тех, кто хочет ускорить 100x свой ноутбук в JN:
#cython #jupyternotebook
  Интересный англоязычный гайд для тех, кто хочет ускорить 100x свой ноутбук в JN:
#cython #jupyternotebook
Поздравляем верно решивших задачу
Задачу о «вычитании» списка из списка верно решили:
— @FriendlyWithMeat;
— @Alex_Bur;
— @impreza555;
Zen чествует победителей! Решение таких задач — хороший способ разогреться перед рабочим днем.
#задача
  
  
  
  
  
Задачу о «вычитании» списка из списка верно решили:
— @FriendlyWithMeat;
— @Alex_Bur;
— @impreza555;
Zen чествует победителей! Решение таких задач — хороший способ разогреться перед рабочим днем.
#задача
👍3
  Шпаргалка BeautifulSoup
Лаконичный гайд о чтении из разных источников, методах нахождения и атрибутах.
#beautifulsoup
  
  
  
  
  
  Лаконичный гайд о чтении из разных источников, методах нахождения и атрибутах.
#beautifulsoup
saleor для онлайн-магазинов
Платформа для создания онлайн-магазинов на базе Python и GraphQL. Продукт опернсорсный, среди фичей:
— встроенные интеграции (например, App Store);
— встроенный CMS;
— гибкий API для любого платёжного шлюза;
— кроссплатформенность;
— деплой с Docker и проч.
Сссылка на репозиторий
#фреймворк
Платформа для создания онлайн-магазинов на базе Python и GraphQL. Продукт опернсорсный, среди фичей:
— встроенные интеграции (например, App Store);
— встроенный CMS;
— гибкий API для любого платёжного шлюза;
— кроссплатформенность;
— деплой с Docker и проч.
Сссылка на репозиторий
#фреймворк
👌6❤1
  Forwarded from Мобильная разработка
У нас в самом разгаре конкурс пет-проектов. Выбирайте понравившиеся работы и продвигайте их к победе своими лайками и просмотрами
Консольная змейка: автор создал консольную версию знаменитой игры без графических библиотек.
Агрегатор фестивального кино: код решает проблему отложенной публикации фестивального кино.
Удивительный пример того, как интерес к теме помогает разработчику годами развивать систему.
Аналог BGInfo для корректного отображения обоев на нескольких экранах: Дмитрий Беликов «лечит» программу BgInfo, исправляет режим заполнения обоев для нескольких экранов.
#diy #конкурс
  
  
  
  
  
Консольная змейка: автор создал консольную версию знаменитой игры без графических библиотек.
Агрегатор фестивального кино: код решает проблему отложенной публикации фестивального кино.
Удивительный пример того, как интерес к теме помогает разработчику годами развивать систему.
Аналог BGInfo для корректного отображения обоев на нескольких экранах: Дмитрий Беликов «лечит» программу BgInfo, исправляет режим заполнения обоев для нескольких экранов.
#diy #конкурс
👍2😁1
  Как стать техническим менеджером после 18 лет в разработке
Очень непросто после стольких лет работы в одном направлении сменить должность и попробовать себя в другом амплуа. Со старыми обязанностями справляться легче и даже самая сложная задача решается без проблем. Но что делать, если хочется перемен?
В этой статье автор, который сам совершил этот нелёгкий переход, поделился, с какими вызовами ему пришлось столкнуться:
Статья
#карьера
  Очень непросто после стольких лет работы в одном направлении сменить должность и попробовать себя в другом амплуа. Со старыми обязанностями справляться легче и даже самая сложная задача решается без проблем. Но что делать, если хочется перемен?
В этой статье автор, который сам совершил этот нелёгкий переход, поделился, с какими вызовами ему пришлось столкнуться:
Статья
#карьера
Pyscan для поиска уязвимостей
Инструмент отыскивает бреши в зависимостях вашего проекта. Он пройдётся по логам poetry, hatch, filt, pdm и прочих менеджеров пакетов, а также прочитает requirements.txt и pyproject.toml. Запускается в прямо в директории проекта командой:
Репозиторий на GitHub
#безопасность
Инструмент отыскивает бреши в зависимостях вашего проекта. Он пройдётся по логам poetry, hatch, filt, pdm и прочих менеджеров пакетов, а также прочитает requirements.txt и pyproject.toml. Запускается в прямо в директории проекта командой:
pyscanРепозиторий на GitHub
#безопасность
👌3
  R2Connect для интеграции AWS S3 и Cloudlfare R2
Библиотека предлагает простой интерфейс для CRUD-операций с объектами, а также создания, управления и синхронизации бакетов в обоих хранилищах.
Проект на PyPi
#библиотека
Библиотека предлагает простой интерфейс для CRUD-операций с объектами, а также создания, управления и синхронизации бакетов в обоих хранилищах.
Проект на PyPi
#библиотека
❤1👍1
  Forwarded from Типичный программист
Автор курсов по Python и Pandas получил вечный бан за рекламу торговли экзотическими животными — решение вынес бот
Ревен М. Лернер создает курсы по Python, выпускает книги с задачами по Python и Pandas. Python и Pandas действительно легко спутать в английском языке с видами редких животных. Хотя названия технологий основаны не на схожести с животными: Python — отсылка к британской комик-группе «Монти Пайтон», а Pandas — сокращение от «Python data analysis».
Лернер попытался разместить рекламу курсов Python и Pandas. Но система сочла её рекламой продажи экзотических животных и заблокировала аккаунт рекламодателя.
Аккаунт не помогло вернуть даже вмешательство человека. Решение о бане вынес бот, но обжаловать его можно было в течение 180 дней. Лернер не знал о бане и просто не успел обжаловать решение. Он экспериментировал с рекламой пару лет назад и просто забыл про свой кабинет.
Если тоже рекламируете курсы про IT на английском, держите несколько идей для рекламных объявлений: «LaTeX для новичков», «убить Python», «получить доступ к Cocaine».
#кек #ии #python
  
  
  
  
  
Ревен М. Лернер создает курсы по Python, выпускает книги с задачами по Python и Pandas. Python и Pandas действительно легко спутать в английском языке с видами редких животных. Хотя названия технологий основаны не на схожести с животными: Python — отсылка к британской комик-группе «Монти Пайтон», а Pandas — сокращение от «Python data analysis».
Лернер попытался разместить рекламу курсов Python и Pandas. Но система сочла её рекламой продажи экзотических животных и заблокировала аккаунт рекламодателя.
Аккаунт не помогло вернуть даже вмешательство человека. Решение о бане вынес бот, но обжаловать его можно было в течение 180 дней. Лернер не знал о бане и просто не успел обжаловать решение. Он экспериментировал с рекламой пару лет назад и просто забыл про свой кабинет.
Если тоже рекламируете курсы про IT на английском, держите несколько идей для рекламных объявлений: «LaTeX для новичков», «убить Python», «получить доступ к Cocaine».
#кек #ии #python
👍13😁13🔥3☃2⚡1
  