Python报错TypeError: Descriptors cannot not be created directly
具体错误:

TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
 1. Downgrade the protobuf package to 3.20.x or lower.
 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).
More information: https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates

这个错误的修改比较容易,遵循第一条提示即可,降低protobuf版本。

pip install protobuf==3.19.0

也可以用镜像加快下载速度

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple protobuf==3.19.0
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐