Discord.py 机器人没有证书

2022-01-15 00:00:00 python bots discord.py

问题描述

Yesterday I made a bot and everything was working, today when I try to run my code I have this error:

ClientConnectorCertificateError(aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host discordapp.com:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108)')]

I am using win10, python 3.8, and pycharm. I saw a similar problem on StackOverflow but the solution Is not working for me.

解决方案

Create a virtual environment in Anaconda and adding it as an interpreter in Pycharm.

Creation of the environment

conda create -n test_env python=3.8 anaconda

Documentation of conda:

-n test_env sets the name of the environment to test_env

python=3.8 anaconda says that you want to use in this environment python in version 3.8. You can put there all the things you need, separated with spaces, e.g. sqlite matplotlib requests and specify their versions the same way as for python.

Activation

conda activate test_env

Deactivation

conda deactivate

Getting rid of it

conda remove -n test_env --all

Add env to pycharm

1.In the Settings/Preferences dialog Ctrl+Alt+S, select Project | Project Interpreter. Click the The Configure project interpreter icon and select Add.

In the left-hand pane of the Add Python Interpreter dialog, select Virtualenv Environment. The following actions depend on whether the virtual environment existed before.

here Please check this github issue here.

Basically navigate to your Applications/Python 3.8/ folder and double click the Install Certificates.command.

Try running this same program on 3.8 and run the install certificates command.

You can directly run below instruction in conda prompt or terminal:

pip install certifi

Or download this script and run it.

相关文章