amqp
Low-level AMQP client for Python (fork of amqplib).
Install
amqp on PyPI
pip
pip install amqpuv
uv add amqppoetry
poetry add amqpPackage facts
| License | BSD (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — vine |
| Maintenance | actively maintained — 639 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: amqp-5.3.1-py3-none-any.whl
Keywords: amqp, rabbitmq, cloudamqp, messaging
About amqp
from the package's own PyPI description — quoted content, verbatim
===================================================================== Python AMQP 0.9.1 client library =====================================================================
|build-status| |coverage| |license| |wheel| |pyversion| |pyimp|
:Version: 5.3.1 :Web: https://amqp.readthedocs.io/ :Download: https://pypi.org/project/amqp/ :Source: http://github.com/celery/py-amqp/ :Keywords: amqp, rabbitmq
About
This is a fork of amqplib_ which was originally written by Barry Pederson.
It is maintained by the Celery_ project, and used by kombu as a pure python
alternative when librabbitmq is not available.
This library should be API compatible with librabbitmq_.
.. _amqplib: https://pypi.org/project/amqplib/ .. _Celery: http://celeryproject.org/ .. _kombu: https://kombu.readthedocs.io/ .. _librabbitmq: https://pypi.org/project/librabbitmq/
Differences from amqplib_
- Supports draining events from multiple channels (
Connection.drain_events) - Support for timeouts
- Channels are restored after channel error, instead of having to close the connection.
-
Support for heartbeats
Connection.heartbeat_tick(rate=2)must called...
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
A pure-Python AMQP 0.9.1 client library for connecting to message brokers like RabbitMQ, providing channel-based message publishing and consumption with support for heartbeats, publisher confirms, and consumer acknowledgments.
Low friction: pure-wheel distribution with only one runtime dependency (vine), and actively maintained by the Celery project with recent commits and stable production status.
BSD permissive license allows commercial and private use with minimal restrictions; suitable for most projects.
Usage
import amqp
with amqp.Connection('broker.example.com') as c:
ch = c.channel()
ch.basic_publish(amqp.Message('Hello World'), routing_key='test')
Verdict: Mature, actively maintained AMQP client with low install friction and no known vulnerabilities. Well-suited for applications needing direct AMQP protocol access or as a fallback when compiled alternatives are unavailable. Production-ready with broad Python version support (3.7–3.10+).
Needs verification
- Whether the optional Cython speedups (controlled by CELERY_ENABLE_SPEEDUPS) are commonly used or recommended in practice.
- Performance characteristics compared to librabbitmq when both are available.
Similar packages
permissive · top 1,000 on PyPI
billiardpermissive · top 1,000 on PyPI
celerypermissive · top 1,000 on PyPI
vinepermissive · top 1,000 on PyPI
confluent-kafkapermissive · top 1,000 on PyPI
google-cloud-pubsubpermissive · top 1,000 on PyPI
gitdbpermissive · top 1,000 on PyPI
kafka-pythonpermissive · top 1,000 on PyPI
zope.eventunclear · top 1,000 on PyPI
azure-servicebusunclear · top 1,000 on PyPI