I wanna run a simple Azure service bus program, I received the below error:
ImportError: cannot import name 'ServiceBusMessage' from 'azure.servicebus'
As I search on the internet, I should install Azure service bus and also I installed. My Python version: 3.8.9 My pip freeze:
azure-common==1.1.26 azure-core==1.13.0 azure-functions==1.6.0 azure-nspkg==3.0.2 azure-servicebus==7.1.1 azure-storage==0.36.0
My code:
from azure.servicebus import ServiceBusClient, ServiceBusMessage import os connstr = os.environ['******'] queue_name = os.environ['*****'] with ServiceBusClient.from_connection_string(connstr) as client: with client.get_queue_sender(queue_name) as sender: single_message = ServiceBusMessage("Single Message") sender.send_messages(single_message) messages = [ServiceBusMessage( "First Message"), ServiceBusMessage("Second message")] sender.send_messages(messages)
Advertisement
Answer
This problem is caused by incompatible versions. You can install the lower version of azure.servicebus
:
pip install azure-servicebus==7.0.0