Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么我的机器人说服务器所有者是无的?_Python_Python 3.x_Discord_Discord.py - Fatal编程技术网

Python 为什么我的机器人说服务器所有者是无的?

Python 为什么我的机器人说服务器所有者是无的?,python,python-3.x,discord,discord.py,Python,Python 3.x,Discord,Discord.py,好的,我想让机器人说谁是服务器所有者,但它说当前服务器所有者是“无”。有办法解决这个问题吗 代码: guild=ctx.guild embed=discord.embed(timestamp=ctx.message.created_at,color=discord.color.dark_green()) 嵌入.set_缩略图(url=guild.icon_url) 嵌入.add_字段(name=“Members”,value=guild.member_count) 嵌入.add_字段(name=

好的,我想让机器人说谁是服务器所有者,但它说当前服务器所有者是“无”。有办法解决这个问题吗

代码:

guild=ctx.guild
embed=discord.embed(timestamp=ctx.message.created_at,color=discord.color.dark_green())
嵌入.set_缩略图(url=guild.icon_url)
嵌入.add_字段(name=“Members”,value=guild.member_count)
嵌入.add_字段(name=“Region”,value=guild.Region,inline=True)
嵌入.add_字段(name=“Owner”,value=guild.Owner,inline=True)
embed.add_字段(name=“Created”,value=guild.Created_at,inline=True)
embed.add_字段(name=“Channels”,value=len(guild.Channels),inline=True)
embed.add_字段(name=“Roles”,value=len(guild.Roles),inline=True)
embed.add_字段(name=“Boosters”,value=guild.premium_subscription_count,inline=True)
embed.set_author(name=f“{guild}| ID:{guild.ID}”,icon_url=guild.icon_url)
embed.set_footer(text=f“由{ctx.author.name}{ctx.author.discriminator}请求”,icon_url=ctx.author.avatar_url)
等待ctx.send(嵌入=嵌入)

谢谢

来自文档:

如果
fetch\u offline\u members
设置为
False
,则用户缓存将不会被删除 存在。例如,这使得做很多事情变得困难或不可能 例如:

计算权限

通过VoiceChannel查询语音频道中的成员。成员将 空的

大多数形式的接收成员将改为接收用户,除了 用于消息事件

Guild.owner通常会解析为“无”。

要解决此问题,您可能需要为客户端设置附加选项:

 discord.Client(*, loop=None, fetch_offline_members = True)

您可以尝试检查的另一种方法是
guild.owner\u id
,以防它与问题相关。

我强烈怀疑您的问题来自新的Discord Privileged Gateway意图。您可以在discord.py文档中阅读更多关于它们的信息

为了解决您的问题,我将尝试以下方法。首先,通过转到
https://discord.com/developers/applications//bot
并检查“服务器成员意图”

然后,按以下方式使用成员意图:

导入不一致
意图=不和谐。意图(成员=真)
client=commands.Bot(command\u prefix=“!”,intents=intents)
#代码的其余部分。。。

我应该把这个
discord.Client(*,loop=None,fetch\u offline\u members=True)放在哪里
在?发布你的整个代码,特定的部分用于启动与discord的连接。整个代码?我的代码有4000多行。你能给我举个例子吗?谢谢。文档中包含了所有内容。也请阅读。好的,我正确地放置了代码,但它仍然不起作用。有什么想法吗?你启用了吗?