Saya mencoba mengembangkan bot yang menyimpan semua pesan dari server yang saya ikuti. Saya ingin tahu apakah ada yang melakukan ini sebelumnya dan bagaimana saya harus melakukannya?

Saya telah melalui API, tetapi tidak dapat menemukan cara untuk mencapai ini.

-4
Vishal Dalwadi 13 Mei 2021, 20:52

1 menjawab

Jawaban Terbaik

Anda dapat mengunduh semua pesan di server dengan mengulang semua saluran, dan mengambil pesan. Bergantung pada jumlah pesan, ini bisa memakan waktu beberapa menit hingga berjam-jam. Dan Anda mungkin akan ditandai oleh sistem anti-spam Discord.

for textChannel in guild.text_channels:
    messagesInChannel = await textChannel.history(limit=None).flatten() # None for all messages
    with open(textChannel.name + "_messages.txt", "w+") as f:
        for message in messagesInChannel:
            f.write(message.content + "\n")
2
itzFlubby 13 Mei 2021, 18:13