今天遇到超级无语的问题
python项目,连接kafka,直接报错。
Traceback (most recent call last):
File "/push.py", line 269, in <module>
main()
File "/push.py", line 264, in main
consumer = PushConsumer(PushConsumer.worker_pool, mode)
File "/push.py", line 42, in __init__
self.consumer = KafkaConsumer(config().PUSH_KAFKA_TOPIC, **kafka_properties)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/consumer/group.py", line 354, in __init__
self._client = KafkaClient(metrics=self._metrics, **self.config)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/client_async.py", line 206, in __init__
self._selector = self.config['selector']()
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/selectors.py", line 511, in __init__
self._selector = select.kqueue()
AttributeError: module 'select' has no attribute 'kqueue'
Exception ignored in: <function KafkaClient.__del__ at 0x10addc170>
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/client_async.py", line 439, in __del__
self._close()
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/kafka/client_async.py", line 413, in _close
if not self._closed:
AttributeError: 'KafkaClient' object has no attribute '_closed'
经过多番寻找,最终定位是依赖出错
from kafka import KafkaConsumer
这个依赖不能放在其他依赖的上面!!!
把它移到导入依赖的最下方问题就自己解决了!