python新版本操作kafka出错


python操作kafka报错:

return '<SimpleProducer batch=%s>' % self.async```
    
    
博主这里使用的python3.7版本,发现使用kafka的库连接时报错,错误信息如下:
 
```python
C:\ProgramData\Anaconda3\python.exe C:/git/base_function/Kafka_.py
Traceback (most recent call last):
  File "C:/git/base_function/kafka_usage.py", line 6, in <module>
    from kafka import KafkaProducer
  File "C:\ProgramData\Anaconda3\lib\site-packages\kafka\__init__.py", line 23, in <module>
    from kafka.producer import KafkaProducer
  File "C:\ProgramData\Anaconda3\lib\site-packages\kafka\producer\__init__.py", line 4, in <module>
    from .simple import SimpleProducer
  File "C:\ProgramData\Anaconda3\lib\site-packages\kafka\producer\simple.py", line 54
    return '<SimpleProducer batch=%s>' % self.async
                                                  ^
    SyntaxError: invalid syntax```

因为py3.7里面async已经变成了关键字。所以导致了不兼容。
 
解决办法:
使用最新的kafka版本,但是pyPI上的kafka还没有被替换成最新的,可以使用下面的方法升级kafka python

pip install kafka-python
 
然后问题就解决了。

但前提是先将你的kafka给卸载掉,确保程序会调用新的kafka,卸载指令为
```python
pip uninstall kafka```</font>


```python

文章作者: 旋律JOJO哒
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 旋律JOJO哒 !
评论
  目录