home.social

Search

80 results for “aiohttp”

  1. Tired of missing GitHub PR reviews? I built github-monitor -- a lightweight Linux daemon that watches for PRs assigned to you and sends desktop notifications the moment they land.

    Features:
    - Desktop notifications with author avatars via notify-send
    - System tray indicator with live PR count and clickable PR list
    - Runs quietly as a systemd user service -- set it and forget it
    - Config reload on SIGHUP, graceful shutdown on SIGTERM

    Under the hood:
    - Pure async Python (asyncio) -- no threads, no blocking I/O
    - aiohttp for GitHub API, dbus-next for session bus IPC
    - Daemon exposes live state over D-Bus, indicator connects as a separate process
    - Frozen dataclasses, strict mypy, full test coverage

    Built with Python 3.13+, packaged with hatchling, managed with uv.

    It's open source and I'd love feedback -- whether it's bug reports, feature ideas, or contributions!

    github.com/dvoraj75/github-mon

    #Python #Linux #OpenSource #GitHub #AsyncPython #DBus #Systemd

  2. Оптимизация асинхронного сервиса на Python

    Всем привет! Сегодня хочу поделиться с вами нашим опытом ускорения асинхронного микросервиса на Python примерно на 25%. Я расскажу, какие действия мы предпринимали с командой, что помогло, а что оказалось не особенно полезно с точки зрения ускорения сервиса. Небольшое предисловие: мы в Иви постоянно работаем над тем, чтобы наши сервисы отвечали быстро и их максимальная предельная нагрузка повышалась. В процессе очередного анализа сервисов, мы выяснили, что один из них, о котором пойдет речь в статье, отвечает довольно медленно, учитывая его особенности. И мы решили его ускорять.

    habr.com/ru/companies/ivi/arti

    #python #asyncio #aiohttp #асинхронное_программирование #телеметрия #оптимизация #время_ответа #профилирование #orjson

  3. Оптимизация асинхронного сервиса на Python

    Всем привет! Сегодня хочу поделиться с вами нашим опытом ускорения асинхронного микросервиса на Python примерно на 25%. Я расскажу, какие действия мы предпринимали с командой, что помогло, а что оказалось не особенно полезно с точки зрения ускорения сервиса. Небольшое предисловие: мы в Иви постоянно работаем над тем, чтобы наши сервисы отвечали быстро и их максимальная предельная нагрузка повышалась. В процессе очередного анализа сервисов, мы выяснили, что один из них, о котором пойдет речь в статье, отвечает довольно медленно, учитывая его особенности. И мы решили его ускорять.

    habr.com/ru/companies/ivi/arti

    #python #asyncio #aiohttp #асинхронное_программирование #телеметрия #оптимизация #время_ответа #профилирование #orjson

  4. Оптимизация асинхронного сервиса на Python

    Всем привет! Сегодня хочу поделиться с вами нашим опытом ускорения асинхронного микросервиса на Python примерно на 25%. Я расскажу, какие действия мы предпринимали с командой, что помогло, а что оказалось не особенно полезно с точки зрения ускорения сервиса. Небольшое предисловие: мы в Иви постоянно работаем над тем, чтобы наши сервисы отвечали быстро и их максимальная предельная нагрузка повышалась. В процессе очередного анализа сервисов, мы выяснили, что один из них, о котором пойдет речь в статье, отвечает довольно медленно, учитывая его особенности. И мы решили его ускорять.

    habr.com/ru/companies/ivi/arti

    #python #asyncio #aiohttp #асинхронное_программирование #телеметрия #оптимизация #время_ответа #профилирование #orjson

  5. Оптимизация асинхронного сервиса на Python

    Всем привет! Сегодня хочу поделиться с вами нашим опытом ускорения асинхронного микросервиса на Python примерно на 25%. Я расскажу, какие действия мы предпринимали с командой, что помогло, а что оказалось не особенно полезно с точки зрения ускорения сервиса. Небольшое предисловие: мы в Иви постоянно работаем над тем, чтобы наши сервисы отвечали быстро и их максимальная предельная нагрузка повышалась. В процессе очередного анализа сервисов, мы выяснили, что один из них, о котором пойдет речь в статье, отвечает довольно медленно, учитывая его особенности. И мы решили его ускорять.

    habr.com/ru/companies/ivi/arti

    #python #asyncio #aiohttp #асинхронное_программирование #телеметрия #оптимизация #время_ответа #профилирование #orjson

  6. Опыт разработки picows: самые быстрые вебсокеты для asyncio

    Всем привет! Меня зовут Тарас, я автор библиотеки picows — ультрабыстрых вебсокетов для asyncio . В этой статье я расскажу, почему вообще появилась ещё одна библиотека для вебсокетов, покажу результаты бенчмарков и заодно порассуждаю о производительности в asyncio. Предистория В далёком-предалёком 2021 году мне довелось поучаствовать в разработке алготрейдинг-платформы для криптовалютных бирж. Выбор языка пал на Python из-за разнообразия ML-библиотек, возможность быстро собирать прототипы и проверять идеи, отсутствия этапа компиляции и в целом наличия богатой экосистемы. Если какая-то идея взлетит, критичный участок всегда можно оптимизировать, хотя бы частично переписав его на C/C++/Cython.

    habr.com/ru/articles/1025286/

    #websockets #python #asyncio #optimization #client #server #picows #aiohttp #benchmark #low_latency

  7. Анализируем MLP сообщество на Пикабу или как я спарсил 65 тысяч постов с Pikabu и построил интерактивный дашборд

    Дело было вечером, делать было нечего... Я, как и многие в IT, периодически просматриваю вакансии, чтобы держать руку на пульсе рынка. И знаете, что бросается в глаза? Огромное количество позиций "Аналитик данных". Хоть это и не моя основная специализация (я больше по ML), теоретическая база у меня есть. И вот я подумал: а как бы мне сделать интересный пет-проект в этой области, чтобы и навыки прокачать, и самому не заскучать?

    habr.com/ru/articles/968106/

    #python #парсинг #data_analysis #streamlit #дэшборд #пикабу #aiohttp #визуализация_данных #петпроект #plotly

  8. Опыт разработки picows: самые быстрые вебсокеты для asyncio

    Всем привет! Меня зовут Тарас, я автор библиотеки picows — ультрабыстрых вебсокетов для asyncio . В этой статье я расскажу, почему вообще появилась ещё одна библиотека для вебсокетов, покажу результаты бенчмарков и заодно порассуждаю о производительности в asyncio. Предистория В далёком-предалёком 2021 году мне довелось поучаствовать в разработке алготрейдинг-платформы для криптовалютных бирж. Выбор языка пал на Python из-за разнообразия ML-библиотек, возможность быстро собирать прототипы и проверять идеи, отсутствия этапа компиляции и в целом наличия богатой экосистемы. Если какая-то идея взлетит, критичный участок всегда можно оптимизировать, хотя бы частично переписав его на C/C++/Cython.

    habr.com/ru/articles/1025286/

    #websockets #python #asyncio #optimization #client #server #picows #aiohttp #benchmark #low_latency

  9. Опыт разработки picows: самые быстрые вебсокеты для asyncio

    Всем привет! Меня зовут Тарас, я автор библиотеки picows — ультрабыстрых вебсокетов для asyncio . В этой статье я расскажу, почему вообще появилась ещё одна библиотека для вебсокетов, покажу результаты бенчмарков и заодно порассуждаю о производительности в asyncio. Предистория В далёком-предалёком 2021 году мне довелось поучаствовать в разработке алготрейдинг-платформы для криптовалютных бирж. Выбор языка пал на Python из-за разнообразия ML-библиотек, возможность быстро собирать прототипы и проверять идеи, отсутствия этапа компиляции и в целом наличия богатой экосистемы. Если какая-то идея взлетит, критичный участок всегда можно оптимизировать, хотя бы частично переписав его на C/C++/Cython.

    habr.com/ru/articles/1025286/

    #websockets #python #asyncio #optimization #client #server #picows #aiohttp #benchmark #low_latency

  10. Опыт разработки picows: самые быстрые вебсокеты для asyncio

    Всем привет! Меня зовут Тарас, я автор библиотеки picows — ультрабыстрых вебсокетов для asyncio . В этой статье я расскажу, почему вообще появилась ещё одна библиотека для вебсокетов, покажу результаты бенчмарков и заодно порассуждаю о производительности в asyncio. Предистория В далёком-предалёком 2021 году мне довелось поучаствовать в разработке алготрейдинг-платформы для криптовалютных бирж. Выбор языка пал на Python из-за разнообразия ML-библиотек, возможность быстро собирать прототипы и проверять идеи, отсутствия этапа компиляции и в целом наличия богатой экосистемы. Если какая-то идея взлетит, критичный участок всегда можно оптимизировать, хотя бы частично переписав его на C/C++/Cython.

    habr.com/ru/articles/1025286/

    #websockets #python #asyncio #optimization #client #server #picows #aiohttp #benchmark #low_latency

  11. Пишем универсальный прототип бэкенд-приложения: Litestar, FastStream, dishka

    Привет, Хабр! Меня зовут Сергей, я техлид в команде PT BlackBox. Мы с коллегами разрабатываем продукт, который позволяет обнаруживать уязвимости в приложениях методом черного ящика. Фактически мы сами и пишем веб-приложения, и именно о них пойдет речь в статье. Я бы хотел с вами поделиться своими наработками по теме бэкенд-приложений и предоставить вам шаблон-прототип, который, как мне кажется, может закрыть подавляющее большинство потребностей при их разработке. Для написания прототипа я буду использовать Litestar , FastStream и dishka . Эта статья будет особенно полезна тем, кто пишет на Tornado, Django, Flask или AIOHTTP и хочет перейти на более актуальные технологии для дальнейшего развития своих проектов на современных рельсах. Ну что ж, приступим

    habr.com/ru/companies/pt/artic

    #python #Litestar #прототип #web #faststream #asgi #sqlalchemy #alembic #pydantic #dishka

  12. Пишем универсальный прототип бэкенд-приложения: Litestar, FastStream, dishka

    Привет, Хабр! Меня зовут Сергей, я техлид в команде PT BlackBox. Мы с коллегами разрабатываем продукт, который позволяет обнаруживать уязвимости в приложениях методом черного ящика. Фактически мы сами и пишем веб-приложения, и именно о них пойдет речь в статье. Я бы хотел с вами поделиться своими наработками по теме бэкенд-приложений и предоставить вам шаблон-прототип, который, как мне кажется, может закрыть подавляющее большинство потребностей при их разработке. Для написания прототипа я буду использовать Litestar , FastStream и dishka . Эта статья будет особенно полезна тем, кто пишет на Tornado, Django, Flask или AIOHTTP и хочет перейти на более актуальные технологии для дальнейшего развития своих проектов на современных рельсах. Ну что ж, приступим

    habr.com/ru/companies/pt/artic

    #python #Litestar #прототип #web #faststream #asgi #sqlalchemy #alembic #pydantic #dishka

  13. Пишем универсальный прототип бэкенд-приложения: Litestar, FastStream, dishka

    Привет, Хабр! Меня зовут Сергей, я техлид в команде PT BlackBox. Мы с коллегами разрабатываем продукт, который позволяет обнаруживать уязвимости в приложениях методом черного ящика. Фактически мы сами и пишем веб-приложения, и именно о них пойдет речь в статье. Я бы хотел с вами поделиться своими наработками по теме бэкенд-приложений и предоставить вам шаблон-прототип, который, как мне кажется, может закрыть подавляющее большинство потребностей при их разработке. Для написания прототипа я буду использовать Litestar , FastStream и dishka . Эта статья будет особенно полезна тем, кто пишет на Tornado, Django, Flask или AIOHTTP и хочет перейти на более актуальные технологии для дальнейшего развития своих проектов на современных рельсах. Ну что ж, приступим

    habr.com/ru/companies/pt/artic

    #python #Litestar #прототип #web #faststream #asgi #sqlalchemy #alembic #pydantic #dishka

  14. State of client side HTTP in #python

    - stdlib http.client - HTTP/1.1 only, docs recommend to use requests instead.
    - requests - poorly maintained, in 2020 stopped working when servers deprecated older TLS versions. HTTP/1.1 only, sync only
    - #httpx - comparatively slow and API design is driven by compatibility with browsers. Some users plug-in aiohttp for better performance. Supports HTTP/2 but it's discouraged as not optimized.
    - #aiohttp - good API, both client and server but seems more focused on the server side; HTTP/1.1 only.
    - #niquests - async fork of requests with HTTP/2, but uses forked urllib3 with the same package name as the original, which messes up deployment.
    - #aioquic - client & server, HTTP/3 only

    🤦

    #pythonRequests #programming

  15. Как я устал дебажить MAX API, отреверсил их вебхуки и отучил Cursor галлюцинировать

    Как я устал дебажить MAX API, отреверсил их вебхуки и отучил Cursor галлюцинировать Когда я писал своего первого более-менее серьезного бота под Max, случилась классика. Я и мой ИИ-ассистент (Cursor) пишем код, строго опираясь на официальную документацию Max API. Запускаю — падает. Сижу по 5-6 итераций, пытаюсь отдебажить базовый функционал, который под ту же Телегу пишется с закрытыми глазами. В какой-то момент меня это достало. Я понял, что проблема не во мне и не в галлюцинациях нейронки. Я просто включил логирование всех входящих POST-запросов и стал дампить реальные вебхуки, которые прилетают от серверов Max. Открыв логи, я понял, почему мы так долго буксовали: то, что написано в документации, и то, что прилетает по факту — это две большие разницы. А слепая привычка писать архитектуру под Telegram Bot API делает только хуже. Различия с официальной документацией Max API (Docs vs Реальность) Вскрываем реальные вебхуки Max API

    habr.com/ru/articles/1005282/

    #python #template #boilerplate #chatbot #aiohttp #asyncio #maxapi #maxmessenger #telegram #telegram_bots

  16. I might be looking for one or more coding buddies for a modest after work #python #game project.
    Especially someone who can support keeping me organized and motivated. Both are hard with ADHD.
    No need to be a professional it is meant for fun and learning. Ideally, we can learn from each other while having fun
    #codingtogether.
    Moderate Python skills needed. German or English speaker. No Vibe coding.

    Here is my pitch:
    I miss the old browser games of 10-20 years ago without all sorts of fancy frontend nonsense.
    Animations, graphics, overbearing JS, Flash or similar. I'd like to do a very toned-down CLI style UX.
    Maybe some
    #asciiart.

    And I'd like to use and improve my
    #async programming skills as well as try out/showcase the #textual library.
    I have also wanted to build something on top of the Space Traders API for a while.
    I have been a developer on the
    #OGame Team for a while and have worked on porting old browser games to newer PHP versions before.
    I have been an OGame player for about a decade.
    I have 20 years of experience in web development in PHP.

    Here is my proposed Stack:
    * Python 3.10 or above
    *
    Textual Frontend
    *
    AioHTTP via OpenApi Generator
    * SQLite / SqlAlchemy for local storage
    *
    Space Traders API
    * Bonus points for hosting the app on a server with textual-serve or textual-web.

  17. I might be looking for one or more coding buddies for a modest after work #python #game project.
    Especially someone who can support keeping me organized and motivated. Both are hard with ADHD.
    No need to be a professional it is meant for fun and learning. Ideally, we can learn from each other while having fun
    #codingtogether.
    Moderate Python skills needed. German or English speaker. No Vibe coding.

    Here is my pitch:
    I miss the old browser games of 10-20 years ago without all sorts of fancy frontend nonsense.
    Animations, graphics, overbearing JS, Flash or similar. I'd like to do a very toned-down CLI style UX.
    Maybe some
    #asciiart.

    And I'd like to use and improve my
    #async programming skills as well as try out/showcase the #textual library.
    I have also wanted to build something on top of the Space Traders API for a while.
    I have been a developer on the
    #OGame Team for a while and have worked on porting old browser games to newer PHP versions before.
    I have been an OGame player for about a decade.
    I have 20 years of experience in web development in PHP.

    Here is my proposed Stack:
    * Python 3.10 or above
    *
    Textual Frontend
    *
    AioHTTP via OpenApi Generator
    * SQLite / SqlAlchemy for local storage
    *
    Space Traders API
    * Bonus points for hosting the app on a server with textual-serve or textual-web.

  18. I might be looking for one or more coding buddies for a modest after work #python #game project.
    Especially someone who can support keeping me organized and motivated. Both are hard with ADHD.
    No need to be a professional it is meant for fun and learning. Ideally, we can learn from each other while having fun
    #codingtogether.
    Moderate Python skills needed. German or English speaker. No Vibe coding.

    Here is my pitch:
    I miss the old browser games of 10-20 years ago without all sorts of fancy frontend nonsense.
    Animations, graphics, overbearing JS, Flash or similar. I'd like to do a very toned-down CLI style UX.
    Maybe some
    #asciiart.

    And I'd like to use and improve my
    #async programming skills as well as try out/showcase the #textual library.
    I have also wanted to build something on top of the Space Traders API for a while.
    I have been a developer on the
    #OGame Team for a while and have worked on porting old browser games to newer PHP versions before.
    I have been an OGame player for about a decade.
    I have 20 years of experience in web development in PHP.

    Here is my proposed Stack:
    * Python 3.10 or above
    *
    Textual Frontend
    *
    AioHTTP via OpenApi Generator
    * SQLite / SqlAlchemy for local storage
    *
    Space Traders API
    * Bonus points for hosting the app on a server with textual-serve or textual-web.

  19. I might be looking for one or more coding buddies for a modest after work #python #game project.
    Especially someone who can support keeping me organized and motivated. Both are hard with ADHD.
    No need to be a professional it is meant for fun and learning. Ideally, we can learn from each other while having fun
    #codingtogether.
    Moderate Python skills needed. German or English speaker. No Vibe coding.

    Here is my pitch:
    I miss the old browser games of 10-20 years ago without all sorts of fancy frontend nonsense.
    Animations, graphics, overbearing JS, Flash or similar. I'd like to do a very toned-down CLI style UX.
    Maybe some
    #asciiart.

    And I'd like to use and improve my
    #async programming skills as well as try out/showcase the #textual library.
    I have also wanted to build something on top of the Space Traders API for a while.
    I have been a developer on the
    #OGame Team for a while and have worked on porting old browser games to newer PHP versions before.
    I have been an OGame player for about a decade.
    I have 20 years of experience in web development in PHP.

    Here is my proposed Stack:
    * Python 3.10 or above
    *
    Textual Frontend
    *
    AioHTTP via OpenApi Generator
    * SQLite / SqlAlchemy for local storage
    *
    Space Traders API
    * Bonus points for hosting the app on a server with textual-serve or textual-web.

  20. Let's see if I can get a list of the projects who are planning on sprinting at #PyConUS this week:

    * @beeware (Room 317)
    * @pyladiescon Web Portal
    * Pallets Projects (#Flask, #Jinja, etc.)
    * #GNU #Mailman (Room 310)
    * Project Mesa
    * Read The Docs
    * SOSW
    * @blackpythondevs Website
    * Core #CPython (2 rooms)
    * Python Community and Conference Organizers Kit (Room 310)
    * Python Packaging
    * @aio_libs / @aiohttp
    * Free Threaded Python Community Support

    (continued in replies)

    #PyConUS2025

  21. If you work with , note that CPEs in NVD are subject to change. I've just discovered that a lot of CPE bindings in are outdated due to changes in CPE vendors and products (aiohttp_project:aiohttp -> aiohttp:aiohttp, stlport:stlport → stlport_project:stlport, soundexchange:sound_exchange → sox_project:sox etc). If you maintain CPE bindings for any purpose, you should revisit and update them.

  22. The #python library #aiohttp uses #yarl for URLs internally, and yarl normalizes URLs by default. It silently decodes some %-encoded characters in the query string that do not strictly need to be encoded.

    Sounds harmless, but it isn't. Changing the URL breaks any protocol that signs important aspects of a HTTP request for security.

    Took me a while to find this bug. I usually expect an HTTP client library to not silently manipulate the URLs before sending a request. Smarter is not always better

  23. Почему простой парсер не всегда решает задачу: мой опыт интеграции спортивных API

    В рамках собственной системы спортивной аналитики я хотел получить real-time доступ к данным о движении коэффициентов — в частности, с платформы pickingodds.com. У сервиса интересная фича — визуализация графика изменения линии по каждому событию. Это потенциально полезный источник вторичных сигналов (например, для обнаружения аномалий, связанных с резкой коррекцией маркет-мейкеров). Изначальный план был прост: интегрироваться по REST API, выкачивать данные раз в несколько минут, писать в TSDB, использовать далее для анализа и фичей в ML-пайплайнах. На практике же всё быстро ушло в зону нетривиальной оптимизации.

    habr.com/ru/articles/930360/

    #pickingodds #коэффициенты_ставок #асинхронный_парсинг #rate_limiting #aiohttp #Redis #Kafka #TimescaleDB #LightGBM #ML_фильтрация_событий

  24. Асинхронный Telegram бот на PyTelegramBotAPI

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

    habr.com/ru/articles/929990/

    #туториал #асинхронность #python #telebot #telegram #aiohttp

  25. Я устал от ограничений Strava и написал свой «швейцарский нож» для анализа тренировок на Python и FastAPI

    Всем привет! Я — разработчик и велосипедист, которому надоели ограничения Strava. Знакомы боли: GPS‑треки с «телепортами», платный анализ по зонам и неудобная загрузка сегментов на Garmin? Я решил исправить это и написал свой «швейцарский нож» для анализа тренировок. Под катом — история создания pet‑проекта Peakline на Python, FastAPI и Vanilla JS. Расскажу, как устроен продвинутый FIT‑генератор для гонок с «призраком», как визуализировать исправление «сломанных» GPX‑треков и как заставить график и карту работать в связке. Поделюсь фрагментами кода, архитектурными решениями и подводными камнями при работе с API Strava. Узнать, как это сделано

    habr.com/ru/articles/920402/

    #strava #fastapi #python #garmin #fit #gps #gpx #api #aiohttp

  26. 🚀 aiohttp 3.12.4 is out! 🐛 Bug fix: connector now properly waits for connections to close before returning from close(). Thanks to github.com/atemate! #aiohttp #python github.com/aio-libs/aio...

    Release 3.12.4 · aio-libs/aioh...

  27. aiohttp 3.12.2 is out! Fixes Content-Length header regression for non-GET requests with None body. Now correctly sets to 0. #python #aiohttp github.com/aio-libs/aio...

    Release 3.12.2 · aio-libs/aioh...