YENİ 📢 Sınırlı lansman teklifi: Tüm oyunlarda ilk aya %70'e varan indirim!Paketleri görün

PlayNHost’ta python-telegram-bot ve aiogram karşılaştırması

Discord botlarıUpdated Oct 29, 20266 min read

Hem python-telegram-bot hem aiogram, 0,5 GB STARTER paketi (ayda US$1,99’dan başlar) dahil olmak üzere her PlayNHost bot paketinde iyi çalışır. Kendi ölçümlerimizde bir python-telegram-bot 22 botu yaklaşık 40 MB, bir aiogram 3 botu yaklaşık 169 MB bellek kullandı, bu yüzden ikisi arasında belirleyici olan bellek değildir. Örneklerini ve eğitimlerini izlediğiniz kütüphaneyi seçin. Python başlangıç botumuz python-telegram-bot kullanır, çünkü Telegram botları için en çok yıldızlanan ve en çok indirilen Python kütüphanesidir ve ölçtüğümüz en hafifidir.

Ne ölçtük

Her kütüphaneyi kendi sunucularımızda, kurulmuş ve başlatılmaya hazır bir botla ölçtük (süreç herhangi bir mesajdan önce ne kadar bellek kullanıyor):

KütüphaneBellek
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

Aynı testte Python tek başına 8 MB kullandı. Kendi kodunuz, bellekte tuttuğu veriler ve sohbet sayısı bu rakamlara eklenir.

Neden her paket boyutu yeterli

0,5 GB STARTER paketi bu kütüphanelerin hepsini kodunuza yer bırakarak çalıştırır: en ağır olan aiogram bile bunun yaklaşık üçte birini kullanır. Botunuz bellekte veri tutuyorsa, dosya ya da görsel işliyorsa ya da tek süreçte birkaç bot çalıştırıyorsa 1 GB ya da daha fazlasını seçin. Paketler ve fiyatlar: Telegram bot barındırma.

Yan yana

python-telegram-botaiogram
Ölçtüğümüz bellekYaklaşık 40 MB (sürüm 22)Yaklaşık 169 MB (sürüm 3)
GitHub yıldızları (29 Eki 2026)29.5365.912
PyPI indirmeleri, son 30 gün (29 Eki 2026)6,76 milyon2,76 milyon
Polling çağrısıapplication.run_polling()await dp.start_polling(bot)
Resmi örneklerindeki token adıYok (bir "TOKEN" yer tutucusu)BOT_TOKEN
Botta ayarlı bırakılmış bir webhookPolling başlarken kendiliğinden kaldırılırKaldırılmaz: 409 Conflict hatasında yeniden dener
Reddedilen bir token (401)Yeniden denemeyi bırakır: Invalid token. Aborting retry loop.Yeniden denemeyi sürdürür, bu yüzden bot çalışıyor görünür
Çalışan başka bir kopya (409)Yeniden denemeyi sürdürürYeniden denemeyi sürdürür

aiogram, Rusça eğitimlerde ve yanıtlarda yaygındır. Bir eğitim izliyorsanız onun kullandığı kütüphaneyi kullanın.

Bunun sunucunuzda anlamı

  • Token: panel onu kodunuza TELEGRAM_BOT_TOKEN, BOT_TOKEN, TOKEN, TELEGRAM_TOKEN ve TELOXIDE_TOKEN olarak verir. aiogram’ın os.getenv("BOT_TOKEN") satırı olduğu gibi çalışır; python-telegram-bot örneklerinde yer tutucuyu os.environ["TOKEN"] ya da os.environ["TELEGRAM_BOT_TOKEN"] ile değiştirin.
  • Çalışıyor görünen ama yanıt vermeyen bot: aiogram reddedilen token’da ve 409 Conflict hatasında, python-telegram-bot ise 409 Conflict hatasında yeniden denemeyi sürdürür. Panel konsolu okur ve nedeni gösteren bir uyarı çıkarır, örneğin Botunuz başka bir yerde de çalışıyor. Bkz. Telegram botu 409 Conflict hatasını düzeltin.
  • Eski bir barındırıcıdan kalan webhook: python-telegram-bot polling başlarken onu kaldırır. aiogram’da Bot sayfasında, Telegram bölümünde Webhook’u kaldır’a tıklayın ya da await bot.delete_webhook() çağrısını start_polling’den önce yapın.
  • Telegram’da çevrimiçi: konsol bir hazır satırı gösterdiğinde Genel bakış sayfasındaki rozet Telegram’da çevrimiçi’ye döner. aiogram, Run polling for bot @your_bot satırını günlük düzeyi INFO olduğunda yazdırır. python-telegram-bot’ta başlangıç botumuzun yaptığı gibi Logged in as @your_bot satırını kendiniz yazdırın.
  • Konsolda token’ınız: Telegram token’ı reddettiğinde python-telegram-bot’un hata mesajı token’ın kendisini içerir. Başlangıç botumuz InvalidToken hatasını yakalar, bunun yerine sade bir satır yazdırır ve günlük satırlarında token’ı gizler.
  • Python sürümü: python-telegram-bot 22, Python 3.10 ya da daha yenisini ister. Kod bölümündeki Çalışma ortamı 3.10’dan 3.14’e kadar sunar, varsayılan 3.12’dir.

Aynı bot, ikisinde de

İkisi de /start komutuna yanıt verir ve panelin verdiği token’ı okur. Kütüphaneyi requirements.txt içine, kodu varsayılan Giriş dosyası olan bot.py içine koyun.

python-telegram-bot, requirements.txt dosyası:

python-telegram-bot>=22,<23

bot.py dosyası:

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, requirements.txt dosyası:

aiogram>=3,<4

bot.py dosyası:

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())

aiogram sürümü INFO düzeyinde günlük tutar, bu yüzden hazır olduğunda Run polling for bot @your_bot yazdırır ve polling’e başlamadan önce botta kalmış bir webhook’u kaldırır.

Ya Node.js’te

Node.js başlangıç botumuz grammY kullanır. Testimizde grammY ve Telegraf yaklaşık aynı belleği kullandı (61 ve 60 MB), bu yüzden ikisi de her pakete uyar. grammY’yi hâlâ güncellendiği için seçtik (26 Ağu 2026’da 1.46.0; Telegraf’ın son sürümü ise 29 Şub 2024’te 4.16.3).

Sık sorulan sorular

Başlangıç botu hangisini kullanıyor?

Python sunucusunda python-telegram-bot 22, Node.js sunucusunda grammY. Genel bakış sayfasındaki Botunuzu kurun kartında Başlangıç botu oluştur’a tıklayın. Bkz. Telegram botu nasıl barındırılır.

Sonra bir kütüphaneden diğerine geçebilir miyim?

Evet. İkisi de aynı Python sunucusunda çalışır: requirements.txt dosyasını ve kodunuzu değiştirin, sonra yeniden başlatın. Paket dosyası değiştiği için yeni paket o başlatmada kurulur.

aiogram için daha büyük bir pakete ihtiyacım var mı?

Hayır. Yaklaşık 169 MB ile 0,5 GB STARTER paketine rahatça sığar. Daha büyük bir paket, botunuzun kendisi büyüdüğünde işe yarar: bellekte tutulan veriler, dosyalar ve görseller ya da tek süreçte birkaç bot.

Botun başka bir yerde mi? Bize taşı

EN YENİ BLOG YAZILARIMIZ