Python बॉट बनाएं: Telegram Bot API से शुरुआती गाइड

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

Python और telegram-bot-api से बॉट कैसे बनाएं? पूरी गाइड

Telegram बॉट्स का परिचय

आज के डिजिटल युग में मैसेजिंग ऐप्स हमारी ज़िंदगी का अहम हिस्सा बन गए हैं, और बॉट्स काम को ऑटोमेट करने, यूज़र्स से बातचीत करने और यहां तक कि बिज़नेस चलाने का एक शानदार ज़रिया हैं। अगर आप जल्दी और आसानी से अपना Telegram बॉट बनाना चाहते हैं, तो Python भाषा और python-telegram-bot लाइब्रेरी सबसे बेहतरीन विकल्प है।

चरण 1. BotFather से एक्सेस टोकन प्राप्त करें

कोड लिखने से पहले, अपने बॉट को Telegram में रजिस्टर करना ज़रूरी है। इसके लिए:

  1. Telegram खोलें और @BotFather यूज़र को सर्च करें।
  2. /start कमांड दें और फिर /newbot टाइप करें।
  3. अपने बॉट के लिए एक नाम और यूनिक username दें (जैसे, MyFirstPythonBot)।
  4. रजिस्ट्रेशन के बाद BotFather आपको एक API टोकन देगा। इसे कॉपी कर लें — यह कोड में काम आएगा।

चरण 2. ज़रूरी लाइब्रेरीज़ इंस्टॉल करें

Telegram API से जुड़ने के लिए हम python-telegram-bot लाइब्रेरी का उपयोग करेंगे। इसे pip के ज़रिए इंस्टॉल करें:

pip install python-telegram-bot --upgrade

चरण 3. बॉट का बेसिक ढांचा

अब एक साधारण बॉट बनाते हैं जो /start कमांड पर जवाब देगा:

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

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
    await update.message.reply_text("नमस्ते! मैं Python में बना आपका पहला बॉट हूँ!")

if __name__ == '__main__':
    app = ApplicationBuilder().token("आपका_टोकन_यहाँ_डालें").build()
    app.add_handler(CommandHandler("start", start))
    app.run_polling()

समझाइश:

  • ApplicationBuilder और CommandHandler — ये कमांड को हैंडल करने के बेसिक टूल्स हैं।
  • start फंक्शन /start कमांड पर रिएक्ट करता है और यूज़र को टेक्स्ट मैसेज भेजता है।
  • run_polling() मेथड बॉट को शुरू करता है और नए मैसेज चेक करना शुरू करता है।

चरण 4. यूज़र के मैसेज को हैंडल करना

अब सामान्य टेक्स्ट मैसेज को हैंडल करने का कोड जोड़ते हैं:

from telegram.ext import MessageHandler, filters

async def echo(update: Update, context: ContextTypes.DEFAULT_TYPE):
    received_text = update.message.text
    await update.message.reply_text(f"आपने लिखा: {received_text}")

if __name__ == '__main__':
    app = ApplicationBuilder().token("आपका_टोकन_यहाँ_डालें").build()
    app.add_handler(CommandHandler("start", start))
    app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, echo))
    app.run_polling()

अब बॉट किसी भी टेक्स्ट मैसेज का जवाब आपके टेक्स्ट को दोहराकर देगा।

चरण 5. बटन और इंटरैक्टिव मेन्यू जोड़ना

बॉट्स में बटन जोड़ने से वे और भी उपयोगी हो जाते हैं:

from telegram import InlineKeyboardButton, InlineKeyboardMarkup

async def menu(update: Update, context: ContextTypes.DEFAULT_TYPE):
    keyboard = [
        [InlineKeyboardButton("बटन 1", callback_data='button1')],
        [InlineKeyboardButton("बटन 2", callback_data='button2')]
    ]
    reply_markup = InlineKeyboardMarkup(keyboard)
    await update.message.reply_text('एक विकल्प चुनें:', reply_markup=reply_markup)

async def button_handler(update: Update, context: ContextTypes.DEFAULT_TYPE):
    query = update.callback_query
    await query.answer()
    await query.edit_message_text(text=f"आपने दबाया: {query.data}")

if __name__ == '__main__':
    from telegram.ext import CallbackQueryHandler
    app = ApplicationBuilder().token("आपका_टोकन_यहाँ_डालें").build()
    app.add_handler(CommandHandler("start", start))
    app.add_handler(CommandHandler("menu", menu))
    app.add_handler(CallbackQueryHandler(button_handler))
    app.add_handler                

ब्लॉग

पुस्तक अनुशंसाएँ