Kafka python 无法在MacBook Pro中配置PYTHON-KAFKA

Kafka python 无法在MacBook Pro中配置PYTHON-KAFKA,kafka-python,Kafka Python,我正试图在我的MacBook中安装Kafka Python,但无法安装。下面是安装在我的MacBook上的软件版本 Mac Sierra Python 3.7.0a4 Python 2.7.10(Default) Kafka 3.5 首先,我使用命令sudoeasy\u install pip来安装pip 接下来,我尝试使用pip安装kafka-python安装kafka-python。但它失败了,因为有2个Kafka实例正在运行,并且它使用了旧版本(2.7)。下面是我得到的错误: Excep

我正试图在我的MacBook中安装Kafka Python,但无法安装。下面是安装在我的MacBook上的软件版本

Mac Sierra
Python 3.7.0a4
Python 2.7.10(Default)
Kafka 3.5
首先,我使用命令
sudoeasy\u install pip
来安装pip

接下来,我尝试使用
pip安装kafka-python
安装kafka-python。但它失败了,因为有2个Kafka实例正在运行,并且它使用了旧版本(2.7)。下面是我得到的错误:

Exception:
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/commands/install.py", line 342, in run
    prefix=options.prefix_path,
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_set.py", line 784, in install
    **kwargs
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_install.py", line 851, in install
    self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_install.py", line 1064, in move_wheel_files
    isolated=self.isolated,
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/wheel.py", line 345, in move_wheel_files
    clobber(source, lib_dir, True)
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/wheel.py", line 316, in clobber
    ensure_dir(destdir)
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/utils/__init__.py", line 83, in ensure_dir
    os.makedirs(path)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/kafka_python-1.3.5.dist-info'

我想在Python3.7版本上安装Kafka python,但该命令一次又一次地使用了2.7版本。因此,最后我按照下面的URL安装了pip3,随后是Kafka python,并成功安装了它:

安装后,pip3安装在路径
/Library/Frameworks/Python.framework/Versions/3.7/bin/pip3
中。Kafka-Python安装在path中
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site软件包

路径中的文件夹包括:

-rw-rw-r--   1 root     admin   126 Jan 24 20:52 easy_install.py
drwxrwxr-x  34 root     admin  1088 Jan 24 20:52 setuptools
drwxrwxr-x   6 root     admin   192 Jan 24 20:52 pkg_resources
drwxrwxr-x  12 root     admin   384 Jan 24 20:52 setuptools-28.8.0.dist-info
drwxrwxr-x  23 root     admin   736 Jan 24 20:52 pip
drwxrwxr-x  10 root     admin   320 Jan 24 20:52 pip-9.0.1.dist-info
drwxrwxr-x   4 root     admin   128 Jan 24 20:52 __pycache__
drwxr-xr-x  18 *******  admin   576 Feb  2 12:26 wheel
drwxr-xr-x  11 *******  admin   352 Feb  2 12:26 wheel-0.30.0.dist-info
drwxr-xr-x  24 *******  admin   768 Feb  2 12:28 kafka
drwxr-xr-x   9 *******  admin   288 Feb  2 12:28 kafka_python-1.3.5.dist-info
当我尝试在terminal或PyCharm中导入Kafka时,它根本无法识别Kafka包,并给出编译错误。在终端中,它抛出以下错误:

>>> import kafka
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/__init__.py", line 23, in <module>
    from kafka.producer import KafkaProducer
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/producer/__init__.py", line 4, in <module>
    from .simple import SimpleProducer
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/producer/simple.py", line 54
    return '<SimpleProducer batch=%s>' % self.async
                                                  ^
SyntaxError: invalid syntax
导入卡夫卡 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/__-init___.py”,第23行,在 从卡夫卡生产商进口卡夫卡生产商 文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/producer/_-init____;.py”,第4行,在 from.simple导入SimpleProducer 文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site packages/kafka/producer/simple.py”,第54行 返回“”%self.async ^ SyntaxError:无效语法
Pycharm编辑器根本无法识别Kafka包,因此会给出编译错误。非常感谢关于如何配置Kafka python的任何帮助。

看来python3.7破坏了兼容性。 kafka python的最新版本(1.4.3)修复了这个问题:“修复python 3.7支持:从SimpleProducer(dpkp#1454)中删除'async'关键字”


来源:

我不知道你是否解决了这个问题。但这个答案有助于解决这个问题

编辑:
基本上,问题在于使用旧版本的卡夫卡软件包。您需要安装当前版本才能解决此问题尝试使用pip cmd安装“kafka-python”软件包。这对我有用,希望对你也有用。

这与此有关吗?欢迎链接到解决方案,但请确保您的答案在没有它的情况下是有用的:这样您的其他用户就会知道它是什么以及它为什么在那里,然后引用您链接到的页面的最相关部分,以防目标页面不可用。也请阅读。谢谢@tibetiroka指出这一点。我是新来的。我编辑了我的答案,希望它会很好。