Pika Python AMQP Client Library
Pika is a RabbitMQ (AMQP-0-9-1) client library for Python.
Pika is a pure-Python implementation of the AMQP 0-9-1 protocol including RabbitMQ’s extensions.
Pika’s documentation can be found at https://pika.readthedocs.org
Here is the most simple example of use, sending a message with the BlockingConnection adapter:
import pika connection = pika.BlockingConnection() channel = connection.channel() channel.basic_publish(exchange='example', routing_key='test', body='Test Message') connection.close()
And an example of writing a blocking consumer:
import pika connection = pika.BlockingConnection() channel = connection.channel() for method_frame, properties, body in channel.consume('test'): # Display the message parts and ack the message print(method_frame, properties, body) channel.basic_ack(method_frame.delivery_tag) # Escape out of the loop after 10 messages if method_frame.delivery_tag == 10: break # Cancel the consumer and return any pending messages requeued_messages = channel.cancel() print('Requeued %i messages' % requeued_messages) connection.close()
To contribute to pika, please make sure that any new features or changes to existing functionality include test coverage.
Pull requests that add or change code without coverage will most likely be rejected.
Additionally, please format your code using yapf with google style prior to issuing your pull request.