Discord.py: Bot Cant Run

Created on 23 Sep 2020  路  21Comments  路  Source: Rapptz/discord.py

Summary

The bot can't run

Reproduction Steps

Expected Results


the bot gets on

Actual Results


The bot can't run

Traceback (most recent call last):
  File "/Users/(personal info you do not need to know)/main.py", line 34, in <module>
    client.run("my bot token")
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 678, in run
    return future.result()
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 658, in runner
    await self.start(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 621, in start
    await self.login(*args, bot=bot)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 472, in login
    await self.http.static_login(token.strip(), bot=bot)
AttributeError: 'NoneType' object has no attribute 'strip'

Checklist

  • [x] I have searched the open issues for duplicates.
  • [x] I have shown the entire traceback, if possible.
  • [x] I have removed my token from display, if visible.

System Information



latest version of python and discord.py
macOS Catalina

I can't join servers not owned by someone I know

bug invalid

Most helpful comment

client.run("my bot token")
Isn't your actual code.

Again, this question should be asked in the dpy guild.

All 21 comments

You've passed None into client.run()

This is not an issue with discord.py.
GitHub issues for this repository should be used to report issues with this library.

For further help specific to using this library, you should join either the official discord.py server or the Discord API server, as the README recommends.

where do I pass None?

client.run("my bot token")
Isn't your actual code.

Again, this question should be asked in the dpy guild.

that's in place of my actual bot token (stored in env)

The env is returning None then see #5846 for a similar issue.

What you're probably doing is
client.run(os.getenv('MjM4NDk0NzU2NTIxMzc3Nzky.CunGFQ.wUILz7z6HoJzVeq6pyHPmVgQgV4')) which won't work.
This is trying to get an environment var named your token.

Not sure how many times I need to say "you should ask this question on the guild"

no, I'm doing this
in main.py

token = os.getenv("DISCORD_TOKEN")
...
client.run(token)

in .env
DISCORD_TOKEN = my bot token

also you exposed a bot token, and I can't join servers not owned by someone I know

That still only changes the answer slightly. os.getenv returns None if it doesn't have a matching key. Your issue is with environment variables, not discord.py

ok, I put token in main.py and now showing this nightmare

Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.8/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 1050, 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 1080, 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:1123)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/(private stuff)/main.py", line 34, in <module>
    client.run("my token")
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 678, in run
    return future.result()
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 658, in runner
    await self.start(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 621, in start
    await self.login(*args, bot=bot)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/client.py", line 472, in login
    await self.http.static_login(token.strip(), bot=bot)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/http.py", line 288, in static_login
    data = await self.request(Route('GET', '/users/@me'))
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/discord/http.py", line 185, in request
    async with self.__session.request(method, url, **kwargs) as r:
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/aiohttp/client.py", line 1012, in __aenter__
    self._resp = await self._coro
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/aiohttp/client.py", line 480, in _request
    conn = await self._connector.connect(
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/aiohttp/connector.py", line 523, in connect
    proto = await self._create_connection(req, traces, timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/aiohttp/connector.py", line 858, in _create_connection
    _, proto = await self._create_direct_connection(
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/aiohttp/connector.py", line 1004, in _create_direct_connection
    raise last_exc
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/aiohttp/connector.py", line 980, in _create_direct_connection
    transp, proto = await self._wrap_create_connection(
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/aiohttp/connector.py", line 938, in _wrap_create_connection
    raise ClientConnectorCertificateError(
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host discord.com:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1123)')]

Per https://github.com/Rapptz/discord.py/issues/5847#issuecomment-697923938 please limit Github issues usage for reporting issues with discord.py library.

I said above that I can't join servers not owned by someone I know

That's your problem.

Duplicate of #4159

oh, I thought you were referring to that fwrs

Phxntxm, that one is windows, this one is for macOS

If you read through the comments on that issue, you'd see the link to the solution if it's Mac:
https://github.com/Rapptz/discord.py/issues/423#issuecomment-272093801

I don't understand what he's saying (in the other issue)

and I'm using python 3.8.5

Basically navigate to your Applications/Python 3.6/ folder (or whatever its called) and double click the Install Certificates.command.

k

yay it works

Was this page helpful?
0 / 5 - 0 ratings

Related issues

marcoshuck picture marcoshuck  路  16Comments

Mercurial picture Mercurial  路  22Comments

AceKiron picture AceKiron  路  23Comments

xomien picture xomien  路  17Comments

haaddaa1 picture haaddaa1  路  14Comments