如何使用 discord.py 制作一个检查某个服务器通道中所有消息的机器人

Posted

技术标签:

【中文标题】如何使用 discord.py 制作一个检查某个服务器通道中所有消息的机器人【英文标题】:How do I use discord.py to make a bot that checks through all messages in a certain server channel 【发布时间】:2020-09-06 06:54:06 【问题描述】:

我正在制作一个不和谐的机器人,它会检查特定服务器通道中的所有消息,并在消息具有特定内容时添加反应。顺便说一句,我知道如何做后者,但我不知道如何让机器人检查服务器中的每条消息。请告诉我怎么做。

【问题讨论】:

“每条消息”,你的意思是在机器人添加/启动之前的消息? 是的,我会将机器人插入我的帐户。 【参考方案1】:

async for ... in history(*, limit=100, before=None, after=None, around=None, oldest_first=None)

返回一个允许接收目标消息历史的 AsyncIterator。

您必须拥有read_message_history 权限才能使用它。

示例: messages = await channel.history(limit=123).flatten() 获取频道历史消息,放入扁平列表中

来自https://discordpy.readthedocs.io/en/latest/api.html#textchannel

【讨论】:

以上是关于如何使用 discord.py 制作一个检查某个服务器通道中所有消息的机器人的主要内容,如果未能解决你的问题,请参考以下文章

如何制作不狙击跨服务器的狙击命令(discord.py)

是否可以通过discord.py检查某个用户在一定时间内在服务器中发送了多少条消息? [关闭]

检查用户是不是在语音频道 discord.py

Discord.py:你如何制作按钮?

如何在 discord.py 中创建密码检查命令 [关闭]

如何检查用户是不是提供了参数 discord.py