[PYTHON] Discord Bot Memorandum ① Bot Erstellung

Einführung

Ein Memorandum, das den Discord-Bot erstellt hat

Aus irgendeinem Grund wollte ich einen Discord-Bot erstellen, also ein Memorandum verschiedener Aktionen aus der Bot-Erstellung Ich wollte etwas anderes als Slackbot ausprobieren

Die Artikelbeschreibung lautet wie folgt

Was ist Zwietracht?

Discord ist eine kostenlose Sprachanruf- / VoIP-Software. (Aus Wikipedia)

Ich habe es schon mehrmals wie Slack benutzt

Da es in Slack einen Bot gibt, dachte ich, dass Discord auch ... und ich habe es nachgeschlagen, aber es war auch in Discord, also habe ich versucht, es zu machen

So erstellen Sie einen Discord-Bot

Erstellt von Zwietrachtentwickler

Klicken Sie auf der Seite Anwendungen auf Neue Anwendung cut1.PNG

Sie werden nach dem Bot-Namen gefragt, geben Sie ihm also Ihren Lieblings-Bot-Namen

Öffnen Sie die Bot-Seite und klicken Sie auf die Schaltfläche Bot hinzufügen Klicken Sie auf Ja, machen Sie es! cut2.PNG

Der erstellte Bot wird angezeigt Sie können auch das Symbol und den Namen ändern

cut3.PNG

cut4.PNG cut5.PNG

cut6.PNG

Stellen Sie OAuth2 wie folgt ein (ich habe vorerst versucht, das gesamte TEXT-System einzuschalten). Wenn Sie auf dem OAuth2-Einstellungsbildschirm eine Verbindung zur URL herstellen, werden Sie gefragt, zu welchem Discord-Raum der Bot eingeladen werden soll. Wenn die Identität abgeschlossen ist, ist der Bot großartig In den Raum kommende Module, Verzeichnisstruktur usw.

Die Module sind wie folgt Bitte bei Bedarf installieren

pip install discord   #Erforderlich bei Verwendung von Zwietracht

Verzeichnisaufbau

Die Verzeichnisstruktur ist wie folgt

- dis_python
  - img
    - good.png
  -dis_test.py

Ich habe verschiedene Dinge gemacht

Offiziell

discord.py Es wurden viele Dinge geschrieben. Es macht Spaß, gründlich zu untersuchen, was Sie tun möchten

Programm

dis_test.py


import discord

TOKEN = "Fügen Sie die Marke des Bots ein"
client = discord.Client()

GOOD_IMG = "./img/good.PNG"

###Liste der Ereignishandler#################################################
#Nur eine Änderung nach async def ändert das ausgeführte Ereignis
#Ausführen, wenn eine Nachricht empfangen wird: Ein_message(message)
#Ausführen, wenn Bot startet: Ein_ready(message)
#Beim Hinzufügen einer Reaktion ausführen:  on_reaction_add(reaction, user)
#Ausführen, wenn ein neues Mitglied beitritt: on_member_join(member)
#Zum Sprachkanal ein- / ausfahren: ein_voice_state_update(member, before, after)
###################################################################


#Bot-Startverarbeitung
@client.event
async def on_ready():
    channel = client.get_channel(Fügen Sie die Kanal-ID ein)
    await channel.send("Hallo! wie gehts?")

#Beim Empfang einer Nachricht
@client.event
async def on_message(message):
    #Ignorieren Sie, wenn der Absender ein Bot ist
    if message.author.bot:
        return
    
    if message.content.startswith("Hallo"):
        await message.channel.send("Hallo!")
    
    if len(message.attachments) > 0:
        await message.channel.send("Hast du irgendwelche Dateien gesendet? ?? ??")

@client.event
async def on_reaction_add(reaction, user):
    await reaction.message.channel.send('{}Hast du gedrückt? ??'.format(reaction.emoji), file=discord.File(GOOD_IMG))


client.run(TOKEN)

Ich werde die detaillierte Erklärung beim nächsten Mal zusammenfassen ...

Ein kleiner Kommentar

Verwenden Sie den von Ihnen verwendeten TOKEN und die Kanal-ID Die Kanal-ID lautet "Numbers 2" am Ende der URL

: //discordapp.com/channels/ Numbers 1 / Numbers 2

Die Ereignishandlerliste fasst zusammen, was Sie möglicherweise verwenden Insbesondere wird on_message () häufig verwendet.

Ausgabeergebnis

Befehlszeile cut7.PNG

Spiel mit dem Bot cut8.PNG cut9.PNG

Ich habe versucht, es vorerst zusammenzufassen

Der Inhalt des Dokuments ist tiefgreifend, daher möchte ich ihn beim nächsten Mal umdrehen. Insbesondere die Dateioperation mit on_message war unerwartet problematisch, daher habe ich ein Memorandum darüber erstellt (˘ω˘).

Recommended Posts

Discord Bot Memorandum ① Bot Erstellung
Machen wir einen Discord Bot.
Python-Anfänger startet Discord Bot
Papagei gibt LINE BOT-Erstellung zurück
Ich habe einen Zwietrachtbot gemacht
[DISCORD BOT] Server Manager-Befehlshilfe
Starten Sie den Discord Python-Bot 24 Stunden lang.
Memorandum zur Erstellung von TFRecord-Dateien zur Objekterkennung