安装问题:

1
2
3
4
5
6
7
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

出现此问题,就是提示安装的版本过高,使用如下方法降低版本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
pip uninstall protobuf
pip install "protobuf==3.20.*"

pip3 uninstall protobuf
pip3 install "protobuf==3.20.*"

python -m pip uninstall protobuf
python -m pip install "protobuf==3.20.*"

python3 -m pip uninstall protobuf
python3 -m pip install "protobuf==3.20.*"

py -m pip uninstall protobuf
py -m pip install "protobuf==3.20.*"