运行代码报no module named Kafka,求Kafka、Python、Spark兼容版本
你遇到的No module named 'kafka'错误首先不是三方版本兼容导致的,是你的Python环境没有安装对应Kafka客户端依赖,先执行以下命令安装:pip install kafka-python
注意你代码里用的是kafka-python库的导入规则,不要装成confluent-kafka或者其他同名不同源的包,避免导入不匹配。
Kafka、Python、Spark版本兼容对应表
以下是经过生产验证的稳定兼容组合,可按需选择:
- 组合1(通用轻量场景,无Spark强依赖)
- Python版本:3.7 ~ 3.10
- kafka-python版本:2.0.2
- Kafka服务端版本:2.4.x ~ 3.3.x
- 组合2(Spark 3.0.x 场景)
- Python版本:3.6 ~ 3.8
- kafka-python版本:2.0.1 及以上
- Kafka服务端版本:2.4.x ~ 2.8.x
- Spark版本:3.0.x
- 组合3(Spark 3.1.x ~ 3.2.x 场景)
- Python版本:3.6 ~ 3.9
- kafka-python版本:2.0.2
- Kafka服务端版本:2.4.x ~ 3.2.x
- Spark版本:3.1.x / 3.2.x
- 组合4(Spark 3.3.x 场景)
- Python版本:3.7 ~ 3.10
- kafka-python版本:2.0.2
- Kafka服务端版本:2.8.x ~ 3.3.x
- Spark版本:3.3.x
如果安装完依赖后还是报错,执行pip list | grep kafka确认kafka-python包已经安装在你当前运行代码的Python环境中,避免多环境冲突导致的导入失败。
内容的提问来源于stack exchange,提问作者Tarek EZZAT
相关产品推荐
相关产品推荐

