Python Can';不要把DM发给我以外的人

Python Can';不要把DM发给我以外的人,python,discord,discord.py,Python,Discord,Discord.py,当我尝试使用bot对自己进行DM或使用message.author时,它工作正常,但当我尝试使用服务器上的其他人的ID对其进行DM时,它只返回discord.ext.commands.errors.BadArgument:User“ID”找不到。我在同一台计算机上尝试了两个帐户,当我只使用其中一个帐户时,它不起作用,但当我登录到第二个帐户时(主帐户仍处于打开状态),它工作正常。以下是我正在使用的: @bot.command() async def dm(ctx, victim: discord.

当我尝试使用bot对自己进行DM或使用
message.author
时,它工作正常,但当我尝试使用服务器上的其他人的ID对其进行DM时,它只返回
discord.ext.commands.errors.BadArgument:User“ID”找不到
。我在同一台计算机上尝试了两个帐户,当我只使用其中一个帐户时,它不起作用,但当我登录到第二个帐户时(主帐户仍处于打开状态),它工作正常。以下是我正在使用的:

@bot.command()
async def dm(ctx, victim: discord.User, *, message=None):
        user = await bot.fetch_user("ID")
        await user.send("message")
此外,当我自己登录(或
message.author
)时,当我设置了一个用于阅读消息的事件时,我无法让它工作。当我将其注释掉时,DM命令再次起作用

@bot.event
   async def on_message(message):
     print(message.author.name + " : " + message.content)

您的问题在于
ID
您将其作为字符串放置,而应该是
受害者.ID
。另外,您没有使用
消息
变量

像这样使用它
{prefix}dm@user您好这是一个测试

@bot.command()
异步def dm(ctx,受害者:discord.Member,*,消息:str=None):
如果消息:
等待受害者。发送(消息)
其他:
等待受害者发送(“无消息上下文”)
试试看


受害者应该输入什么?@H3xcOokie请检查上面我编辑了一点代码并做了一个例子。我已经在帖子中说过,这不会有任何问题。
await ctx.message.author.send("Hello.")