I wanna run a simple Azure service bus program, I received the below error:
JavaScript
x
2
1
ImportError: cannot import name 'ServiceBusMessage' from 'azure.servicebus'
2
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:
JavaScript
1
7
1
azure-common==1.1.26
2
azure-core==1.13.0
3
azure-functions==1.6.0
4
azure-nspkg==3.0.2
5
azure-servicebus==7.1.1
6
azure-storage==0.36.0
7
My code:
JavaScript
1
15
15
1
from azure.servicebus import ServiceBusClient, ServiceBusMessage
2
3
import os
4
connstr = os.environ['******']
5
queue_name = os.environ['*****']
6
7
with ServiceBusClient.from_connection_string(connstr) as client:
8
with client.get_queue_sender(queue_name) as sender:
9
single_message = ServiceBusMessage("Single Message")
10
sender.send_messages(single_message)
11
12
messages = [ServiceBusMessage(
13
"First Message"), ServiceBusMessage("Second message")]
14
sender.send_messages(messages)
15
Advertisement
Answer
This problem is caused by incompatible versions. You can install the lower version of azure.servicebus
:
JavaScript
1
2
1
pip install azure-servicebus==7.0.0
2