问题
报错提示:
bash
TypeError:不能直接创建描述符。
如果此调用来自 _pb2.py 文件,则您生成的代码已过期,必须使用 protoc >= 3.19.0 重新生成。
如果您不能立即重新生成原型,其他一些可能的解决方法是:
1. 将 protobuf 包降级到 3.20.x 或更低版本。
2. 设置 PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (但这将使用纯 Python 解析并且会慢得多)。
解决方案
我现在的版本为protobuf-4.25.1。
按照报错提示,卸载当前版本的protobuf,重新安装3.19.0版本
分别执行以下命令:
bash
pip uninstall protobuf
bash
pip install protobuf==3.19.0
重新安装后可正常使用!