我的邮件是垃圾邮件,我只想发送1次。如何解决?
@client.event async def on_message(message): if 'happy birthday' in message.content.lower(): await message.channel.send('Happy Birthday! ??')
答案 0 :(得分:1)
因为这是一个on_message
事件,它还会检测到漫游器的消息,并且漫游器正在发送包括生日快乐的消息。
如果您不希望其发送垃圾邮件,则可以检查作者是否是message.author.bot
的机器人帐户。
@client.event
async def on_message(message):
if message.author.bot:
return
if 'happy birthday' in message.content.lower():
await message.channel.send('Happy Birthday! ??')
答案 1 :(得分:0)
当漫游器发送”Happy Birthday!”
”happy birthday”
处于小写版本时,您正在创建一个无限循环。因此,机器人读取了happy birthday
并发送了一条消息Happy Birthday!
。僵尸程序将其检测为新消息时,新消息(转换为小写字母时)包含happy birthday
,因此僵尸程序发送消息。
有两种方法可以解决此问题,您可以将邮件内容更改为不包含happy birthday
或者您可以使用message.author
message docs page