首页 > 解决方案 > 从 discord.py 中最近匹配的用户名获取用户对象

问题描述

我正在尝试让不和谐的机器人向服务器中具有最近匹配用户名的用户发送 DM。通过最接近的匹配用户名,我的意思是,如果给机器人一个用户名的一部分,如“shin”,它会找到最接近的匹配用户名,如“shinramen”。我提供的此代码仅适用于用户的提及或确切用户名。我曾尝试使用 difflib,但不幸的是无法让它工作。我缺少任何更简单的解决方案吗?

async def dm(ctx, member: discord.Member):
  user = await member.create_dm()
  await user.send('message goes here')

标签: pythonpython-3.xdiscordbotsdiscord.py

解决方案


您不再需要创建 dm 频道。只需使用一个await member.send("Whatever msg")

PS: 最近匹配的用户名是什么意思?您必须提供更多详细信息,因为我看不到这一点。Discord已经自动为您 执行 操作。只需在您要在不和谐中提及的用户上按 Enter 键。他们会自动向您显示建议。我很确定您别无选择,只能提及该命令的成员。


推荐阅读