如何在 on_member_join()discord.py 中向成员发送私人消息?

Mic*_*siO 5 python python-3.x discord.py

这就是我所拥有的:

@client.command(pass_context=True)
@client.event
async def on_member_join(ctx, member):
    print(f'{member} has joined a server.')
    await ctx.send(f"Hello {member}!")
    await ctx.member.send(f"Welcome to the server!")
Run Code Online (Sandbox Code Playgroud)

我需要机器人在加入时发送包含规则和命令列表的私人消息。

请帮忙!

小智 4

该事件on_member_join()仅接受成员作为有效参数(请参阅文档)。因此,您尝试做的事情:on_member_join(ctx, member)不会起作用。您需要改用它:on_member_join(member)

如果您按如下方式使用该事件:

@client.event
async def on_member_join(member):
    await member.send('Private message')
Run Code Online (Sandbox Code Playgroud)

您可以直接向加入服务器的成员发送消息。因为你使用这个事件获得了一个成员对象。