我试图公开我的机器人,因此我需要在json中存储几个ID
如果机器人加入公会,它将在json中创建一个条目:
{
"token": "MY_TOKEN",
"guilds": {
"TiLiKas": {
"rules_message": {
"rules_id": 780729484931366912
},
"ticket_message": {
"ticket_id": 778567282321391638
}
},
"Darkness": {
"rules_message": {
"rules_id": 765132820049428481
},
"ticket_message": {
"ticket_id": 798839023031549962
}
},
"Bot-Test-Server": {
"rules_message": {},
"ticket_message": {}
}
}
}
如何创建公会信息:
@commands.Cog.listener()
async def on_guild_join(self, ctx):
default_prefix = "?"
for guild in self.client.guilds:
guildName = guild
with open("data.json", "r") as f:
data = json.load(f)
tmpDict = {
"rules_message": { },
"ticket_message": { }
}
data["guilds"][str(guildName)] = tmpDict
with open("data.json", "w") as f:
json.dump(data, f, indent=4)
问题是,如果bot被服务器踢出,则条目仍保留在json中
如果机器人离开公会,我如何从json中删除服务器?
谢谢你的帮助
正如我在评论中所说的,有一个
on_guild_remove
事件,您可以从那里的json文件中删除公会参考资料:
相关问题 更多 >
编程相关推荐