![](/img/trans.png)
[英]Azure Eventhubs (Python): checkpointing with blob storage - keyerror issue in EventProcessor when checkpointing is enabled
[英]Error using azure-eventhubs python example
我正在尝试使用示例代码从 Azure 事件中心接收数据。
这是代码
import os
import sys
import logging
import time
from azure.eventhub import EventHubClient, Receiver, Offset
logger = logging.getLogger("azure")
ADDRESS = "amqps://mine.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=sadfsafdljksad=<eventhub>"
但是我在执行时收到以下错误..
Traceback (most recent call last):
File "./recv.py", line 5, in <module>
from azure.eventhub import EventHubClient, Receiver, Offset
ImportError: cannot import name 'EventHubClient'
任何帮助将不胜感激。
我认为您实际上安装了azure-eventhub 包,版本 5.0.0 。 但是EventHubClient
在5.0.0版本中不存在,它存在于azure-eventhub包中,版本1.3.3或以下。
默认情况下,当您使用此命令pip install azure-eventhub
为 python 安装 azure eventhub 包时,它将自动安装最新版本 5.0.0。 所以这句话from azure.eventhub import EventHubClient, Receiver, Offset
会抛出错误ImportError: cannot import name 'EventHubClient'
您可以通过打开 cmd -> 输入命令pip show azure-eventhub
来检查包的版本。 截图如下:
有2种解决方案:
解决方案 1:继续使用 5.0.0 版本,然后您应该重新编写代码并按照本文档中的示例进行操作。
解决方案2:如果要使用当前包含from azure.eventhub import EventHubClient, Receiver, Offset
,则应先卸载 azure-eventhub 5.0.0 version
,然后使用此命令pip install azure-eventhub==1.3.3
重新安装1.3.3 version
pip install azure-eventhub==1.3.3
使用此解决方案可以正常使用此命令重新安装 1.3.3 版本 pip install azure-eventhub==1.3.3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.