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多行。你能给我举个例子吗?谢谢。文档中包含了所有内容。也请阅读。好的,我正确地放置了代码,但它仍然不起作用。有什么想法吗?你启用了吗?