AttributeError:“消息”对象没有属性“消息”

时间:2020-08-25 14:35:22

标签: python discord discord.py

@bot.command() 
async def level(ctx) : 
    file = openpyxl.load_workbook("level.xlsx")
    sheet = file.active
    exp = [10, 20, 40, 70, 110, 160, 220, 290, 370, 460, 560]
    i = 1
    while True :
        if sheet["A" + str(i)].value == str(ctx.message.author.id) :
            sheet["B" + str(i)].value = sheet["B" + str(i)].value + 2.5
            if sheet["B" + str(i)].value >= exp[sheet["C" + str(i)].value - 1] :
                sheet["C" + str(i)].value = sheet["C" + str(i)].value + 1
                await ctx.send("Level UP !!\n현재 레벨 : " + str(sheet["C" + str(i)].value) + "\nExp : " + str(sheet["B" + str(i)].value))
            file.save("level.xlsx")
            break
        if sheet["A" + str(i)].value == None :
            sheet["A" + str(i)].value = str(ctx.message.author.id)
            sheet["B" + str(i)].value = 0
            sheet["C" + str(i)].value = 1
            file.save("level.xlsx")
            break
        i += 1

我正在创建一个系统,该系统可以在聊天时自动建立exp,并在填写特定exp时自动升级。

使用@bot.command()时,它很好用,但是我必须输入级别才能使其正常工作,并且当您切换到@bot.event并随时聊天时,会出现以下错误:

AttributeError: 'Message' object has no attribute 'message'

如何解决该错误?

1 个答案:

答案 0 :(得分:3)

查看代码和错误代码段,我认为您需要将ctx.message.author.id替换为ctx.author.id。 同样,我可能是错的,因为您没有提供完整的错误堆栈跟踪。