所以我想创建一个机器人来复制每个人所说的一切。我试图制作一个 .txt 文件,其中包含某人所说的所有内容,但它很快就会变得杂乱无章,无论如何它都不会发送消息。有什么帮助吗?
代码:
@bot.command()
async def copy(ctx):
with open("file.txt", "w") as f:
async for message in ctx.history(limit=1000):
f.write(message.content + "\n")
答案 0 :(得分:1)
要在发送后立即再次发送每条消息,请添加:
@bot.event
async def on_message(message):
await message.channel.send(message.content)
await client.process_commands(message)
为了避免机器人也将自己的消息成倍增加,请检查 message.author
是否是机器人:
@bot.event
async def on_message(message):
if not message.author.bot:
ctx = await bot.get_context(message)
await ctx.send(message.content)
await client.process_commands(message)
如果需要,您可以删除命令副本。
参考文献: