繁体   English   中英

Json 数据在一天结束时不保存

[英]Json data doesn't save at the end of the day

我正在使用 repl.it 运行我的 discord 机器人,但我遇到了问题。 有时,通常在一天结束时,无论用户做什么都不会保存在分配用于存储数据的 json 文件中。 有谁知道发生了什么?

嘿,我遇到了同样的问题,这是因为如果您不在编辑器中,文件更改不会持续存在。

您可以做的最好的事情是使用数据库来存储您的数据。

看看一些数据库,如 mongo db 和 PostgreSQL。

我找到了解决这个问题的方法。 显然,repl.it 由于发生了 DDos 攻击而强制执行此功能,我不太确定发生了什么,但它是一项安全功能。 要保存文件,即使我不在编辑器上(这是导致问题的原因),我也必须让我的脚本打开文件然后关闭它,然后保存它。 我是这样做的:

def save(filePath="filename.json", **kwargs):
  while True:
    with open(filePath, "w") as f:
      f.write(json.dumps(kwargs))

@bot.event
async def on_ready():
    await bot.change_presence(activity=discord.Streaming(
        name=f"+help - {len(bot.guilds)} servers - dsc.gg/wumpusbot",
        url="https://www.twitch.tv/defaultmodels"))
    print('Bot is online')
    await save()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM