gpt4 book ai didi

python - 如何在没有 discord.py 的情况下获取用户在 discord 服务器中发送的消息数?

转载 作者:行者123 更新时间:2023-12-05 01:34:44 25 4
gpt4 key购买 nike

手动使用 discord 的搜索功能,您可以输入类似 from:user#3456 的内容,它会显示他们在服务器上发送了多少消息(至少,您有权访问的消息).

有人告诉我无法通过 discord.py 获取此信息,但真的没有办法获取该数据吗?我必须求助于网络抓取工具吗?

需要说明的是,我已经看过 history()。我正在寻找一种访问 Discord 已有的搜索功能的方法。

最佳答案

这实际上可以使用 discord.TextChannel.history 。这是一个例子:

userMessages = []

userID = 1234567890 # Change this to the ID of the user you are looking messages for
channelID = 1234567890 # Change this to the channel ID of the messages you want to check for

channel = client.get_channel(channelID)
user = discord.utils.find(lambda m: m.id== userID, channel.guild.members)

async for message in channel.history():
if message.author == user:
userMessages.append(message.content)

print(len(userMessages)) # Outputs total user messages

确保将 1234567890 替换为相应的 ID。

我添加了一个数组,它也显示所有用户消息,如果您愿意,可以删除它并让它增加一个计数器。

关于python - 如何在没有 discord.py 的情况下获取用户在 discord 服务器中发送的消息数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63589122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com