赞
踩
python版本:3.12.4
最近更新了一下python版本,升级到3.12.4版本,发现原来和kafka交互的代码突然报错了。
- python
- Python 3.12.4 (v3.12.4:8e8a4baf65, Jun 6 2024, 17:33:18) [Clang 13.0.0 (clang-1300.0.29.30)] on darwin
- Type "help", "copyright", "credits" or "license" for more information.
- >>> from kafka.consumer.group import KafkaConsumer
- Traceback (most recent call last):
- File "<stdin>", line 1, in <module>
- File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/kafka/__init__.py", line 23, in <module>
- from kafka.consumer import KafkaConsumer
- File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/kafka/consumer/__init__.py", line 3, in <module>
- from kafka.consumer.group import KafkaConsumer
- File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/kafka/consumer/group.py", line 13, in <module>
- from kafka.consumer.fetcher import Fetcher
- File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/kafka/consumer/fetcher.py", line 19, in <module>
- from kafka.record import MemoryRecords
- File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/kafka/record/__init__.py", line 1, in <module>
- from kafka.record.memory_records import MemoryRecords, MemoryRecordsBuilder
- File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/kafka/record/memory_records.py", line 27, in <module>
- from kafka.record.legacy_records import LegacyRecordBatch, LegacyRecordBatchBuilder
- File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/kafka/record/legacy_records.py", line 50, in <module>
- from kafka.codec import (
- File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/kafka/codec.py", line 9, in <module>
- from kafka.vendor.six.moves import range
- ModuleNotFoundError: No module named 'kafka.vendor.six.moves'

解决办法:卸载原理的kafka-python包,已经不兼容最新的python版本,安装kafka-python-ng包。
- pip3 install kafka-python
-
- pip3 install kafka-python-ng
验证OK:
- python
- Python 3.12.4 (v3.12.4:8e8a4baf65, Jun 6 2024, 17:33:18) [Clang 13.0.0 (clang-1300.0.29.30)] on darwin
- Type "help", "copyright", "credits" or "license" for more information.
- >>> from kafka.consumer.group import KafkaConsumer
- >>>
- >>> quit()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。