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