Heim >Backend-Entwicklung >Python-Tutorial >Erstellen Sie einen Telegram-Bot auf Python

Erstellen Sie einen Telegram-Bot auf Python

Barbara Streisand
Barbara StreisandOriginal
2024-09-19 20:16:031116Durchsuche

Create a Telegram Bot on Python

Inhaltsverzeichnis:

  1. Was ist ein Telegram-Bot?
  2. Voraussetzungen
  3. Erstellen eines Bots auf Telegram
  4. Python-Umgebung einrichten
  5. Den Bot-Code schreiben
  6. Bereitstellung des Bots
  7. Fazit

1. Was ist ein Telegram-Bot?

Bots sind kleine Anwendungen, die vollständig innerhalb der Telegram-App ausgeführt werden. Benutzer interagieren mit Bots über flexible Schnittstellen, die jede Art von Aufgabe oder Dienst unterstützen können.

Mehr über Bots können Sie in der offiziellen Dokumentation lesen:
Bots
Telegram-Bot-API


2. Voraussetzungen

Bevor Sie mit der Bot-Erstellung beginnen, benötigen Sie Folgendes:

  • Ein Telegram-Konto: Sie können eines ganz einfach erstellen, indem Sie die Telegram-App auf Ihr Telefon herunterladen.
  • Python installiert: Wir verwenden Python 3, stellen Sie also sicher, dass es auf Ihrem Computer installiert ist. Download-Link
  • Grundlegende Python-Kenntnisse: Das Verständnis der Python-Syntax und -Pakete wird Ihnen bei der Navigation im Code helfen. Ich kann dieses Buch „Automate the Boring Stuff with Python“ empfehlen
  • BotFather-Zugriff: BotFather ist ein integrierter Telegram-Bot, der Sie bei der Verwaltung und Erstellung neuer Bots unterstützt.
  • VS-Code (optional): Ich verwende ihn zum Schreiben meiner Bots. Sie können aber auch gerne einen anderen Editor wählen. Aber ich würde empfehlen, dieses zu verwenden. Hier können Sie die neueste Version von VS Code herunterladen, und hier finden Sie eine Anleitung, wie Sie sie für Python einrichten.

3. Einen Bot auf Telegram erstellen

Um Ihren eigenen Bot zu erstellen, müssen Sie BotFather verwenden, das offizielle Tool zum Registrieren und Verwalten von Bots auf Telegram.

Schritte:

  1. Öffnen Sie Telegram und suchen Sie nach dem Bot BotFather. (Geben Sie @botfather in das Suchmenü ein)
  2. Starten Sie einen Chat mit BotFather, indem Sie /start eingeben.
  3. Erstellen Sie einen neuen Bot, indem Sie /newbot eingeben.
  4. Sie werden aufgefordert, einen Namen für Ihren Bot anzugeben. Geben Sie einen eindeutigen Namen ein (z. B. Hello World).
  5. BotFather fragt nach einem Benutzernamen für den Bot. Der Benutzername muss mit „bot“ enden (z. B. HelloWorldBot).
  6. Nach Abschluss dieser Schritte erhalten Sie von BotFather einen Token. Dieses Token ist von entscheidender Bedeutung, da es Ihren Bot authentifiziert und Ihnen die Interaktion mit der Telegram-API ermöglicht.

Wichtig:Halten Sie Ihr Token privat und teilen Sie es nicht öffentlich!


4. Python-Umgebung einrichten

Als nächstes müssen wir unsere Python-Umgebung für die Interaktion mit der Telegram-API einrichten. Wir werden die Python-Telegram-Bot-Bibliothek verwenden, die eine einfache und benutzerfreundliche Schnittstelle für die Entwicklung von Telegram-Bots bietet.

Schritte:

Installieren Sie die Python-Telegram-Bot-Bibliothek:
Führen Sie den folgenden Befehl aus, um die erforderliche Bibliothek zu installieren:

 pip install python-telegram-bot 

Erstellen Sie eine neue Python-Datei: Sie können ihr einen Namen wie „my_bot.py“ geben, um den Code Ihres Bots zu speichern.


5. Schreiben des Bot-Codes

Jetzt, da unsere Umgebung bereit ist, schreiben wir den Bot-Code.

Beispielcode

Hier ist ein einfacher Bot, der auf die Befehle /start und /help reagiert:

import logging
from telegram import Update
from telegram.ext import ApplicationBuilder, CommandHandler, ContextTypes

# Enable logging
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
                    level=logging.INFO)
logger = logging.getLogger(__name__)

# Define a start function to respond to the /start command
async def start(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
    await update.message.reply_text('Hello! I am your bot. How can I help you today?')

# Define a help function to respond to the /help command
async def help_command(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
    await update.message.reply_text('You can use the following commands:\n/start - Start the bot\n/help - Get help')

def main():
    # Create the application and pass the bot token
    application = ApplicationBuilder().token('YOUR_BOT_TOKEN_HERE').build()

    # Add command handlers for /start and /help
    application.add_handler(CommandHandler("start", start))
    application.add_handler(CommandHandler("help", help_command))

    # Start the bot and run it until manually stopped
    application.run_polling(allowed_updates=Update.ALL_TYPES)

if __name__ == '__main__':
    main()

Erläuterung:

  • Importe: Wir importieren Telegram- und telegram.ext-Module, um unseren Bot zu erstellen. Diese stellen die Klassen und Funktionen bereit, die für die Interaktion mit der Telegram-API erforderlich sind.
  • Protokollierung: Die Protokollierung ist aktiviert, um Ereignisse und Fehler zu verfolgen.
  • Start- und Hilfebefehle: Wir definieren zwei Funktionen (start und help_command), die eine Nachricht senden, wenn Benutzer die entsprechenden Befehle auslösen.
  • Token: Ersetzen Sie „YOUR_BOT_TOKEN_HERE“ durch das Token, das Sie von BotFather erhalten haben.
  • Abfragen:Der Bot nutzt Abfragen, um ständig nach neuen Nachrichten zu suchen und darauf zu antworten, sobald sie eingehen.

Ausführen des Bots:

  1. Ersetzen Sie das Platzhalter-Token im Code durch das Token Ihres Bots.
  2. Führen Sie Ihr Python-Skript aus:
 python my_bot.py

Ihr Bot ist jetzt betriebsbereit! Öffnen Sie Telegram, senden Sie die Befehle /start oder /help an den Bot und er wird antworten.


6. Bereitstellen des Bots

Das Ausführen des Bots auf Ihrem lokalen Computer eignet sich hervorragend zum Testen, aber was ist, wenn Sie möchten, dass er rund um die Uhr verfügbar ist? Um dies zu erreichen, können Sie den Bot auf einem Server oder Cloud-Dienst bereitstellen.

Allgemeine Bereitstellungsoptionen:

  • Heroku: Eine kostenlose Cloud-Plattform, auf der Sie Ihren Bot hosten können.
  • AWS (Amazon Web Services): Skalierbarer, erfordert für Anfänger jedoch möglicherweise etwas Setup.
  • VPS (Virtual Private Server): Gibt Ihnen die volle Kontrolle über Ihren Server.
  • PythonAnywhere: Eine einsteigerfreundliche Option mit kostenlosen Stufen. Jede Plattform bietet einzigartige Möglichkeiten zur Bereitstellung von Python-Anwendungen. Sie können den Bereitstellungs-Tutorials folgen, die speziell auf den von Ihnen gewählten Dienst zugeschnitten sind.

7. Fazit

Herzlichen Glückwunsch! Sie haben mit Python erfolgreich einen einfachen Telegram-Bot erstellt. Sie haben gelernt, wie man:

  • Richten Sie einen Telegram-Bot mit BotFather ein.
  • Schreiben Sie Python-Code, um Befehle zu verarbeiten.
  • Führen Sie den Bot lokal aus und interagieren Sie mit ihm über Telegram.

Als nächstes würde ich Ihnen empfehlen, die Beispiel-Bots von Python-Telegram-Bot kennenzulernen


Dies ist eine Artikelserie. In den nächsten Artikeln erkläre ich, wie Sie Ihren Bot auf PythonAnywhere hosten, wie Sie Bots auf Ihrem eigenen Raspberry PI-Server hosten und wie Sie kompliziertere Bots erstellen.

Das obige ist der detaillierte Inhalt vonErstellen Sie einen Telegram-Bot auf Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn