discord.py 我无法运行服务器信息命令



我最近用discord.py编程,经过几次搜索,我仍然找不到实现该命令的方法(这也导致我在处理其他从服务器请求信息的命令时遇到问题(,因此如果可以的话,我需要帮助。在这种情况下,我想创建一个命令,为我提供服务器信息。

Traceback (most recent call last):
File "C:UsersPC GIUSEPPEPycharmProjectsuntitledvenvlibsite-packagesdiscordextcommandsbot.py", line 892, in invoke
await ctx.command.invoke(ctx)
File "C:UsersPC GIUSEPPEPycharmProjectsuntitledvenvlibsite-packagesdiscordextcommandscore.py", line 797, in invoke
await injected(*ctx.args, **ctx.kwargs)
File "C:UsersPC GIUSEPPEPycharmProjectsuntitledvenvlibsite-packagesdiscordextcommandscore.py", line 92, in wrapped
raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: NameError: name 'server' is not defined

代码:

@client.command(aliases=["serverinfo","Server_info","Serverinfo","SERVERINFO","si","Si","SI"])
@commands.has_any_role('Moderatori', 'Triumvirato', 'Co-Triumvirato', 'Senatori', '690956686147453048')
async def ServerInfo(ctx):
author = ctx.author.name
name_server = server.name
create_server = server.create
owner_server = server.owner.name
embed = discord.Embed(
title="Informazioni del server",
description=f'Tutte le informazioni generali del nostro server {name_server}',
color=0x003399
)
embed.set_thumbnail(url='')
embed.set_footer(text=f'Richiesto da: {author}')
embed.add_field(
name='Server creato il:',
value='f{create_server}',
)
embed.add_field(
name='Owner Attuale del server:',
value='f{create_server}',
)
embed.add_field(
name='Server creato il:',
value=f'{create_server}',
)
embed.add_field(
name='Server creato il:',
value=f'{owner_server}',
)

您没有在代码中定义server,这就是出现此错误的原因
Server是机器人所在的discord.py服务器的旧参考。现在,你必须像这样使用Guild

@client.command()
async def ServerInfo(ctx):
author = ctx.author.name
guild = ctx.guild
name = guild.name
create_server = server.created_at
owner_server = server.owner.name
(...)

你也可以创建一个这些信息的字典:

@client.command()
async def ServerInfo(ctx):
author = ctx.author.name
guild = ctx.guild
infos = {
'name': guild.name
'owner': guild.owner.name
'created_at': guild.created_at
}
(...)

如果你真的不知道discord.py(v1.0之前(和discord.py@rewrite(v1.0之后(,这里有一个摘要链接。

最新更新