Я уже некоторое время кодирую бота раздора, но не понял, как загрузить токен моего бота откуда-то еще, кроме файла бота python. Я бы хотел использовать для этого текстовый файл (config.txt), но все в этом роде работает.
У меня есть Python 3.11.1, если это имеет значение: D
imports blahblah
intents blahblah
...
client.run('token here')
То, что вы хотите изучить, это переменные среды.
Среда может быть вашей локальной средой разработки, в которой вы, очевидно, работаете в данный момент, и может быть промежуточная среда, которая похожа на вашу производственную среду, чтобы вы могли видеть, как ваше приложение ведет себя в нелокальной среде, которая важно знать, прежде чем запускать его в производство.
Чтобы использовать переменные среды, стандартная библиотека в Python, например. os
from os import getenv
С помощью метода getenv вы можете получить значение переменной среды, которое необходимо заполнить в вашей текущей среде, прежде чем вы сможете их вызывать.
Вызов вашего токена может выглядеть так:
getenv("TOKEN")
Это может работать только в том случае, если вы перед запуском чего-то вроде
$ export TOKEN='token here'
В вашем Терминале.
Нет причин использовать ENV VARS или ENVIRONMENT VARIABLES с большой буквы. Это не аббревиатуры.
Нашел лучшее решение самостоятельно:
К вашему импорту добавить
import json
Добавить этот код
with open("./config.json") as config:
configData = json.load(config)
token = configData["Token"]
Ко дну
client.run(token)
Это config.json
{"Token": "token here"}
Я не знаком с ботом дискорда, но что мешает вам использовать файл конфигурации? В чем проблема ?