我正在使用 Python 开发一个 Discord Bot。并收到以下错误(AttributeError: 'NoneType' object has no attribute 'strip')。这是我的代码。
import os
import discord
from dotenv import load_dotenv
load_dotenv()
TOKEN = os.getenv('O.......')
GUILD = os.getenv('CodeUP')
client = discord.Client()
@client.event
async def on_ready():
for guild in client.guilds:
if guild.name == GUILD:
break
print(
f'{client.user} is connected to the following guild:\n'
f'{guild.name}(id: {guild.id})'
)
client.run(TOKEN)
答案 0 :(得分:1)
您应该作为“令牌”获得的是存储在 .env
文件中的机器人令牌的变量名称,如下所示!
.env
文件的内容:
BOT_TOKEN=ODMyMTUxNjQ4OTAxMjY3NTA2.YHfnnQ.r_rQ2mmo8HFvaBAl9rry28VM4Nk
python文件中的token变量:
TOKEN = os.getenv('BOT_TOKEN')
答案 1 :(得分:0)
os.getenv
获取具有给定名称的环境变量。您正在使用您的令牌作为您的姓名。将代码替换为:
TOKEN = os.getenv('DISCORD_TOKEN', 'ODMyMTUxNjQ4OTAxMjY3NTA2.YHfnnQ.r_rQ2mmo8HFvaBAl9rry28VM4Nk')
这会找到一个名为 DISCORD_TOKEN
的环境变量,如果不存在,则使用 'ODM...'
我希望这不是您在互联网上发布的真实令牌,如果是这样,请务必立即取消。