Discord.py 特定用户的ID

0

的问题

你好堆溢出的社区!

只是想问为什么时候如果我给一个特定的用户标识到禁止命令它恢复我下面的(此命令的目的只是当有人有禁止权限进入它w/o平或引入任何输入和只的命令它得到禁止,aka一个小巨魔禁止命令):

enter image description here

这是命令代码:

>     @client.command() @commands.has_permissions(ban_members = True)
> #async def niceroger(ctx,Member:discord.User=None): async def niceroger(ctx,Member:discord.User=None):
>     user=669680584376713259
>     username = client.get_user(user)
>     #user2=discord.get_member(669680584376713259)
>     reason = "Bye bye"
>     await ctx.guild.ban(username, reason=reason)
>     #await ctx.guild.ban(user, reason=reason)
>     #await ctx.guild.ban(Member, reason = reason)
>     await ctx.channel.send(f"Bye <@669680584376713259>")

最好的问候, 工程师

discord discord.py python
2021-11-23 16:56:28
1

最好的答案

1

首先,确保总是输入错误信息只是一块代码,而不是一个图像。 看来你的问题只是一个 AttributeErrorusername 有没有 id. 我认为,这里的问题是这一行:

username = client.get_user(user)

根据该文件, client.get_user(id) 将返回 None 如果它找不到一个用户所给的身份证。 因此,请确保您的 user 变是正确的。

2021-11-23 19:51:41

谢谢你了后续,这是错误引擎收录: pastebin.com/eVHR58dG 可悲的是,由于某些原因,它仍表示同样的错误? 如何设置的变correctcly?
Engineer

我认为可变设置正确,但是id本身可能是错误的。 错误发生,因为 client.get_user(user) 正在返回 None 并分配给 username. 后来的编码是试图获得 username.id但它不存在因为 usernameNone. 因此,确保分配给的数量 user 所以是正确的 client.get_user(user) 不返回 None
Roopesh-J

对不起打扰了,就重新尝试来记住一切从我的蟒蛇的基本课程,现在我加入de>的客户。get_user(用户)和现在一个不同的故事。 你介意来做一个实例代码或参照一个这样我就可以看到它是如何工作: pastebin.com/FLeVRi2V
Engineer

没有后顾之忧。 你确定 669680584376713259 是正确的身份证。 因为如果这样,我不明白为什么你的问题仍然存在。 我把你的代码来自于引擎收录相链接的和更新了它 在这里. 不是100%肯定的如果它的工作原理,但是给它一个镜头。 如果没有然后,我认为 id 是错误的。
Roopesh-J

谢谢你,让我进步了很多,我们刚刚通过了一点,现在我发现的问题是,在线"会员=环磷酰胺.信息。协会。get_member(user_id)"从未设法找到任何不和谐的ID,既没有地雷,无论是提供一个从ALT acc。 这是公元前我们不设置领域"user_id=669680584376713259"是否正确?
Engineer

嗯这就是奇怪的。 好了试试这个 user = client.fetch_user(id). 这将返回 User 而不是一个 Member 所以你禁止它们这样 await ctx.guild.ban(user, reason=reason). 的 user_id 设置正确,因为只要它是一个 int 它的设置是否正确。 值本身可能是不正确,但它似乎你已经澄清。
Roopesh-J

嗯,我改变的机器人响应之前的"禁止"得到应用来看,如果它响应用户通过提及它但它输出的东西,我从来没有见过? 引擎收录: pastebin.com/fj5VuZcf
Engineer

哦我很抱歉,我的错误。 它应该是 await client.fetch_user(id)它是一个协程,因此它必须等待.
Roopesh-J

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................