【发布时间】:2021-12-18 16:36:47
【问题描述】:
我怎样才能在一个文件中包含机器人代码,但在另一个文件中运行实际的机器人(不是 cogs/extensions)。 由于循环冲突,我需要在另一个文件中运行它。
我尝试在其上导入客户端(机器人构造函数的变量)和 .start(),但没有成功,只有 Web 服务器启动。
示例代码:
在机器人文件中:
import discord
from discord.ext import commands
client = commands.Bot(command_prefix="!")
@client.event
async def on_ready():
print("Im ready!")
在另一个文件中(在我的例子中是 Sanic 网络应用程序):
from bot_file import client
import discord
from sanic import Sanic
app = Sanic()
app.run()
client.run("token")
【问题讨论】:
-
您需要做的是在机器人内部运行 Sanic,或者不在 sanic 内部运行。其中一个必须是主要应用程序,并将用于启动另一个。
标签: python discord.py sanic