簡體   English   中英

discord.py 將消息 object 分配給 json 文件

[英]discord.py Assigning a Message object to a json file

在 discord.py 中,我讓機器人發送消息。 然后,我讓機器人將該消息 object 分配給 json 文件中的一個鍵。 我的代碼是

async def testmessage():
    with open('messages.json') as json_file:
        data = json.load(json_file)
    channel = bot.get_channel(779563485724934184)
    message1 = await channel.send('hi')
    print(data)
    data['message1'] = message1

    with open('messages.json', 'w') as json_file:
        json.dump(data, json_file)

    message3 = data['message1']
    await message3.edit(content='lol')

但是,當我這樣做時,我收到錯誤TypeError: Object of type Message is not JSON serializable我該如何解決這個問題?

您需要獲取消息 object 的字段並創建一個以字段名稱作為鍵的字典。 只取你需要的字段。 然后,將此 dict 放入字段data['message1']中。

discord.Message 在 JSON 中不可序列化。

如果你想存儲真實的消息 object 並且在讀取存儲的數據時能夠檢索它,JSON 是不可能的,你應該腌制 object 一切都會好起來的(甚至不確定。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM