Discord.py离开服务器
问题描述
我无法访问我的机器人所在的某些测试服务器,我希望机器人离开它们,我的代码是
@bot.command()
@commands.is_owner()
async def guilds(ctx):
await ctx.channel.purge(limit=1)
guild = ""
servers = bot.guilds
for a in servers:
guild += f"{a}
"
if a == "Fleshy's server":
b = a.id()
await bot.leave(b)
await ctx.author.send(guild)
当我使用它时,我没有得到任何错误,但它也不会离开肉体的服务器
这些是他所在的服务器
my server The Judas Cradle 7 test server yosh’s rock Fleshy's server Retronized Cafe Fleshy's server Fleshy's server Able's Hub
解决方案
如果您希望通过知道工会名称来离开该工会,可以运行以下命令:
@bot.command()
async def leaveg(ctx, *, guild_name):
guild = discord.utils.get(bot.guilds, name=guild_name) # Get the guild by name
if guild is None:
print("No guild with that name found.") # No guild found
return
await guild.leave() # Guild found
await ctx.send(f"I left: {guild.name}!")
- 我们使用
*
是为了还允许名称中包含空格 - 导入
from discord.utils import get
如果您知道服务器的ID,还可以运行以下命令:
@bot.command()
async def leave(ctx, guild_id):
await bot.get_guild(int(guild_id)).leave()
await ctx.send(f"I left: {guild_id}")
- 导入
from discord.utils import get
- 请务必填入ID:
leave ServerID
您还可以查看docs。
相关文章