I'm making a discord bot with Python following a video but my code won't execute, even though the one in video has no problem. I tried to loop it up, but everything I tried didn't help.
My code:
import discord
from discord.ext import commands
client = commands.Bot(command_prefix='!')
@client.event
async def on_ready():
print('Hello server!')
client.run('MyToken')
Errors:
Traceback (most recent call last):
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/aiohttp/connector.py", line 936, in _wrap_create_connection
return await self._loop.create_connection(*args, **kwargs) # type: ignore # noqa
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/asyncio/base_events.py", line 1046, in create_connection
transport, protocol = await self._create_connection_transport(
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/asyncio/base_events.py", line 1076, in _create_connection_transport
await waiter
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/asyncio/sslproto.py", line 529, in data_received
ssldata, appdata = self._sslpipe.feed_ssldata(data)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/asyncio/sslproto.py", line 189, in feed_ssldata
self._sslobj.do_handshake()
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/ssl.py", line 944, in do_handshake
self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/bot.py", line 12, in <module>
client.run('ZMrX0vZ6HlhdHiOLuD-6j1uF-Gzkq2lo')
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/discord/client.py", line 640, in run
return future.result()
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/discord/client.py", line 621, in runner
await self.start(*args, **kwargs)
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/discord/client.py", line 584, in start
await self.login(*args, bot=bot)
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/discord/client.py", line 442, in login
await self.http.static_login(token.strip(), bot=bot)
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/discord/http.py", line 261, in static_login
data = await self.request(Route('GET', '/users/@me'))
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/discord/http.py", line 165, in request
async with self.__session.request(method, url, **kwargs) as r:
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/aiohttp/client.py", line 1012, in __aenter__
self._resp = await self._coro
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/aiohttp/client.py", line 480, in _request
conn = await self._connector.connect(
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/aiohttp/connector.py", line 523, in connect
proto = await self._create_connection(req, traces, timeout)
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/aiohttp/connector.py", line 858, in _create_connection
_, proto = await self._create_direct_connection(
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/aiohttp/connector.py", line 1004, in _create_direct_connection
raise last_exc
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/aiohttp/connector.py", line 980, in _create_direct_connection
transp, proto = await self._wrap_create_connection(
File "/Users/Petr/Desktop/Projects/Own repo/Python/discordBot/venv/lib/python3.8/site-packages/aiohttp/connector.py", line 938, in _wrap_create_connection
raise ClientConnectorCertificateError(
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host discordapp.com:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)')]
First of all, you should be careful because your token is visible in the error you gave us. Anyone with your token will have full control of your bot so be sure to regenerate it after you get this problem fixed.
Try doing: client = discord.Client()
Instead of: client = commands.Bot(command_prefix='!')
I ran it with that command and it worked
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.