当前位置: 代码迷 >> python >> discord.py Bot并不总是删除消息
  详细解决方案

discord.py Bot并不总是删除消息

热度:116   发布时间:2023-07-14 08:43:15.0

作为一个小测试,我正在制造一个不和谐机器人,它将接收我发送的消息,将其删除,然后让该机器人发送消息。 我有一些有用的东西,但是我有几个问题。

首先,漫游器不会总是删除邮件。

有了这个代码

if message.content.startswith("H"):
    print("test")
    print(message.author)
    msg=message.content
    await client.delete_message(message)
    await client.send_message(message.channel, msg)

该漫游器只会有时删除我的消息。 知道为什么吗?

其次,我希望它仅重复我的消息,但是当我这样做时;

if message.author=="Myusername#1234":
    print("test")
    print(message.author)
    msg=message.content
    await client.delete_message(message)
    await client.send_message(message.channel, msg)

什么都没发生。 没错,没事。 有人可以帮忙吗?

PS: Myusername#1234只是一个示例,不是我要输入的内容。

在第一个代码示例中,您的机器人程序的消息还将通过if语句,并且仅停留在编写以“ H”开头的消息并删除它们的循环中。

您应该将其更新为

  if message.content.startswith("H") and message.author.id != "bot_id":

至于第二个代码示例,最好的选择是使用用户ID,因为它们不会改变

if message.author.id == "user_id":

如果您真的想使用其他东西,可以执行message.author.namemessage.author.nick