【发布时间】:2021-01-25 13:38:48
【问题描述】:
我试图在 Spyder 中创建代码来启动我的 discord 机器人,但遇到以下错误:
Traceback(最近一次通话最后一次):
文件“”,第 1 行,在 runfile('C:/Users/Nathan/Desktop/HW/Python stuff/my_discord_bot.py', wdir='C:/Users/Nathan/Desktop/HW/Python stuff')
运行文件中的文件“C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py”,第 827 行 execfile(文件名,命名空间)
文件“C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py”,第 110 行,在 execfile exec(编译(f.read(),文件名,'exec'),命名空间)
文件“C:/Users/Nathan/Desktop/HW/Python stuff/my_discord_bot.py”,第 17 行,在 client.run('我的应用令牌')
文件“C:\ProgramData\Anaconda3\lib\site-packages\discord\client.py”,第 705 行,运行中 _cleanup_loop(循环)
文件“C:\ProgramData\Anaconda3\lib\site-packages\discord\client.py”,第 98 行,在 _cleanup_loop loop.close()
文件“C:\ProgramData\Anaconda3\lib\asyncio\selector_events.py”,第 83 行,关闭 raise RuntimeError("无法关闭正在运行的事件循环")
RuntimeError: 无法关闭正在运行的事件循环
我在网上搜索过,有人告诉我使用名为“nest_asyncio”的包。我pip安装了包,导入它,在控制台运行nest_asyncio.apply(),但是再次运行后代码仍然报同样的错误。
这是我的代码:
import discord
from discord.ext import commands
client = commands.Bot(command_prefix = '.')
@client.event
async def on_ready():
print ('Bot is ready.')
client.run('my application token')
顺便说一句,我用“我的应用程序令牌”替换了我的实际令牌,因为我不想与任何人共享它。
请帮忙。如何消除此错误并使其正常运行?
【问题讨论】:
标签: python runtime-error discord.py python-asyncio spyder