NEU 📢 Begrenztes Startangebot: bis zu 70 % Rabatt auf deinen ersten Monat, für jedes Spiel!Tarife ansehen

python-telegram-bot vs aiogram bei PlayNHost

Discord-Bot-HostingUpdated Oct 29, 20266 min read

Sowohl python-telegram-bot als auch aiogram laufen gut in jedem PlayNHost-Bot-Tarif, auch im 0,5-GB-Tarif STARTER (ab 1,99 US$ im Monat). In unseren eigenen Messungen brauchte ein Bot mit python-telegram-bot 22 etwa 40 MB Arbeitsspeicher und ein Bot mit aiogram 3 etwa 169 MB, der Speicher entscheidet also nicht zwischen den beiden. Nimm die Bibliothek, deren Beispielen und Tutorials du folgst. Unser Python-Starter-Bot nutzt python-telegram-bot, weil sie die Python-Bibliothek für Telegram-Bots mit den meisten Sternen und den meisten Downloads ist und die leichteste, die wir gemessen haben.

Was wir gemessen haben

Wir haben jede Bibliothek auf unseren eigenen Servern gemessen, mit einem fertig gebauten Bot, der bereit zum Start war (der Speicher, den der Prozess belegt, vor der ersten Nachricht):

BibliothekSpeicher
python-telegram-bot 22 (Python 3.13)40 MB
Telegraf (Node.js 22)60 MB
grammY (Node.js 22)61 MB
aiogram 3 (Python 3.13)169 MB

Python allein brauchte im selben Test 8 MB. Dein eigener Code, die Daten, die er im Speicher hält, und die Zahl der Chats kommen zu diesen Zahlen noch dazu.

Warum jede Tarifgröße funktioniert

Der 0,5-GB-Tarif STARTER betreibt jede dieser Bibliotheken mit Platz für deinen eigenen Code: Selbst aiogram, die schwerste, braucht etwa ein Drittel davon. Wähl 1 GB oder mehr, wenn dein Bot Daten im Speicher hält, Dateien oder Bilder verarbeitet oder mehrere Bots in einem Prozess betreibt. Tarife und Preise: Telegram-Bot-Hosting.

Im Vergleich

python-telegram-botaiogram
Gemessener SpeicherEtwa 40 MB (Version 22)Etwa 169 MB (Version 3)
GitHub-Sterne (29. Okt. 2026)29.5365.912
PyPI-Downloads, letzte 30 Tage (29. Okt. 2026)6,76 Millionen2,76 Millionen
Polling-Aufrufapplication.run_polling()await dp.start_polling(bot)
Token-Name in den offiziellen BeispielenKeiner (ein Platzhalter "TOKEN")BOT_TOKEN
Ein für den Bot gesetzter WebhookWird beim Start des Pollings selbst entferntWird nicht entfernt: Es versucht es bei 409 Conflict immer wieder
Ein abgelehnter Token (401)Hört auf, es zu versuchen: Invalid token. Aborting retry loop.Versucht es immer wieder, der Bot scheint also zu laufen
Eine andere Kopie läuft (409)Versucht es immer wiederVersucht es immer wieder

aiogram ist in russischsprachigen Tutorials und Antworten verbreitet. Wenn du einem Tutorial folgst, nutz die Bibliothek, die es nutzt.

Was das auf deinem Server bedeutet

  • Der Token: Das Panel gibt ihn deinem Code als TELEGRAM_BOT_TOKEN, BOT_TOKEN, TOKEN, TELEGRAM_TOKEN und TELOXIDE_TOKEN. Das os.getenv("BOT_TOKEN") von aiogram funktioniert unverändert; ersetze in Beispielen für python-telegram-bot den Platzhalter durch os.environ["TOKEN"] oder os.environ["TELEGRAM_BOT_TOKEN"].
  • Ein Bot, der zu laufen scheint, aber nicht antwortet: aiogram versucht es bei einem abgelehnten Token und bei 409 Conflict immer wieder, python-telegram-bot bei 409 Conflict. Das Panel liest die Console und zeigt ein Banner mit der Ursache, zum Beispiel Dein Bot läuft auch noch woanders. Lies dazu Telegram-Bot-Fehler 409 Conflict beheben.
  • Ein Webhook von einem alten Host: python-telegram-bot entfernt ihn, wenn das Polling startet. Klick bei aiogram auf der Bot-Seite im Bereich Telegram auf Webhook entfernen oder ruf await bot.delete_webhook() vor start_polling auf.
  • Online in Telegram: Das Label auf der Übersicht wechselt zu Online in Telegram, sobald die Console eine Bereit-Zeile zeigt. aiogram gibt Run polling for bot @your_bot aus, wenn das Logging auf INFO steht. Gib bei python-telegram-bot Logged in as @your_bot selbst aus, wie es unser Starter-Bot tut.
  • Dein Token in der Console: Lehnt Telegram den Token ab, enthält die Fehlermeldung von python-telegram-bot den Token selbst. Unser Starter-Bot fängt InvalidToken ab, gibt stattdessen eine einfache Zeile aus und verbirgt den Token in seinen Log-Zeilen.
  • Python-Version: python-telegram-bot 22 braucht Python 3.10 oder neuer. Die Laufzeitumgebung im Bereich Code bietet 3.10 bis 3.14, mit 3.12 als Standard.

Derselbe Bot in beiden

Beide antworten auf /start und lesen den Token, den das Panel ihnen gibt. Leg die Bibliothek in requirements.txt und den Code in bot.py, die Standard-Startdatei.

python-telegram-bot: die requirements.txt

python-telegram-bot>=22,<23

bot.py

import os

from telegram import Update
from telegram.ext import Application, CommandHandler, ContextTypes


async def start(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
    await update.effective_message.reply_text("Hello! I am running on PlayNHost.")


async def post_init(application: Application) -> None:
    print(f"Logged in as @{application.bot.username}", flush=True)


application = (
    Application.builder()
    .token(os.environ["TELEGRAM_BOT_TOKEN"])
    .post_init(post_init)
    .build()
)
application.add_handler(CommandHandler("start", start))
application.run_polling()

aiogram: die requirements.txt

aiogram>=3,<4

bot.py

import asyncio
import logging
import os

from aiogram import Bot, Dispatcher
from aiogram.filters import CommandStart
from aiogram.types import Message

dp = Dispatcher()


@dp.message(CommandStart())
async def start(message: Message) -> None:
    await message.answer("Hello! I am running on PlayNHost.")


async def main() -> None:
    bot = Bot(os.environ["BOT_TOKEN"])
    await bot.delete_webhook()
    await dp.start_polling(bot)


if __name__ == "__main__":
    logging.basicConfig(level=logging.INFO)
    asyncio.run(main())

Die aiogram-Version loggt auf INFO, gibt also Run polling for bot @your_bot aus, sobald sie bereit ist, und entfernt einen für den Bot gesetzten Webhook, bevor sie das Polling startet.

Und unter Node.js

Unser Node.js-Starter-Bot nutzt grammY. In unserem Test brauchten grammY und Telegraf etwa gleich viel Speicher (61 und 60 MB), beide passen also in jeden Tarif. Wir haben grammY gewählt, weil sie noch gepflegt wird (1.46.0 am 26. Aug. 2026, gegenüber dem letzten Release von Telegraf, 4.16.3, am 29. Feb. 2024).

Fragen, die Leute stellen

Welche nutzt der Starter-Bot?

python-telegram-bot 22 auf einem Python-Server, grammY auf einem Node.js-Server. Klick in der Karte Deinen Bot einrichten auf der Übersicht auf Starter-Bot erstellen. Lies dazu So hostest du einen Telegram-Bot.

Kann ich später von einer Bibliothek zur anderen wechseln?

Ja. Beide laufen auf demselben Python-Server: Ändere requirements.txt und deinen Code und starte dann neu. Das neue Paket wird bei diesem Start installiert, weil sich die Paketdatei geändert hat.

Brauche ich für aiogram einen größeren Tarif?

Nein. Mit etwa 169 MB passt sie mit reichlich Platz in den 0,5-GB-Tarif STARTER. Ein größerer Tarif hilft, wenn dein Bot selbst wächst: Daten im Speicher, Dateien und Bilder oder mehrere Bots in einem Prozess.

Läuft dein Bot schon woanders? Zieh ihn zu uns um

UNSERE NEUESTEN BLOGS