我正在尝试吸引提及的用户(DM对话中涉及的用户除外)。到目前为止,我已经写了这篇文章,如果在频道中使用它可以正常工作,但是在DM中使用时却无效:
if message.content.startswith('!hello'):
user = message.server.get_member_named(message.content.split()[1])
await client.send_message(user, "you got message!")
如果在DM中使用上述代码,则上面的代码始终返回AttributeError: 'NoneType' object has no attribute 'get_member_named'
。
我该怎么办?
答案 0 :(得分:1)
私人频道没有服务器。相反,您可以遍历您的漫游器所在的所有服务器并检查它们中的每一个(这是User
转换器在专用通道中的工作方式)
result = None
for server in client.servers:
result = server.get_member_named(name)
if result:
break
if result:
# User found
else:
# User not found