我想制作一个向我发送 DM 的机器人,但它有错误
这是我的代码:
member = client.get_user(int(my id))
await member.send('abc')
和错误:
AttributeError: 'NoneType' object has no attribute 'send'
答案 0 :(得分:0)
首先,确保机器人以某种方式与您连接,无论是您共享一个公会还是您已经与机器人打开了 DM 频道。其次,确保您允许来自共享服务器成员或陌生人的 DM,以免机器人的 DM 被阻止。
不要将变量命名为“member
”,而是将其命名为更合适的名称,因为您正在检索 User
对象而不是 Member
。接下来,您要测试您和机器人是否共享一个 DM 频道,如果不是,机器人将创建一个,然后您可以发送消息。
user = client.get_user(int('0123456789'))
if not (dm_channel := user.dm_channel):
dm_channel = await user.create_dm()
await dm_channel.send('abc')
答案 1 :(得分:0)
确保将“1234567890”替换为您自己的用户 ID
OSError: [Errno 22] Invalid argument
示例 -
user = client.get_user(1234567890)
await user.send("Hi!", tts=True)