code Snippets

Telegram Bot with Python Using the Telegram API

Telegram Bot with Python Using the Telegram API - Telegram Bot with Python Using the Telegram API

Telegram Bot with Python

Bots are sophisticated software programs that are made to carry out certain activities on their own. These automated devices replicate or replace human behavior by following preprogrammed instructions. They are extensively employed in many different applications, including task automation, alerts, and customer service. This post will explain how to use Python and the Telegram API to build a basic Telegram bot.

Getting

Before starting with Python, we need to follow a few steps to get the Telegram Bot API key. Here’s how you can do it:

  1. Create a Telegram Account: Download the app and create an account if you don’t already have one for Telegram.
  2. Search for BotFather: BotFather is an official bot that helps create other bots. Look it up on the Telegram application.
  3. Start a Chat with BotFather: Open the chat with BotFather and type /start. You’ll be given a set of instructions.
  4. Build a New Bot: After typing /newbot, submit it. You are going to be asked to give your bot a name. Select a name that embodies the goal of your bot.
  5. Set a Username: Next, you’ll be asked to provide a username for your bot. The username, such as my_awesome_bot, must be unique and finish in “bot.”
  6. Get the API Key: Once you’ve successfully named your bot, BotFather will send you a unique API key. This key will be essential for connecting your Python code to the Telegram bot.

Now that you have the API key, lets move on to building the bot.

New Project :-https://www.youtube.com/@Decodeit2

Setting Up the Environment for Python

To start building the bot in Python, we need the python-telegram-bot package, which can be installed using pip:

pip install python-telegram-bot

After installing the package, lets move on to coding.

PHP PROJECT:- 

Writing the Telegram Bot in Python

Now, we will create a simple Telegram bot that responds to commands using Python. The first thing we need is to import the necessary modules and initialize the bot using the API key provided by BotFather.

import telegram
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters

# Replace 'TOKEN' with your actual bot token
bot = telegram.Bot(token='YOUR_API_KEY')

# Set up the updater and dispatcher
updater = Updater(token='YOUR_API_KEY', use_context=True)
dispatcher = updater.dispatcher

Creating a Simple Hello World Command

Let’s follow the tradition and create a simple Hello, World! command. We will define a function that sends a message in response to the /hello command.

def hello(update, context):
    context.bot.send_message(chat_id=update.effective_chat.id, text="Hello, World!")

# Add the command handler to the dispatcher
hello_handler = CommandHandler('hello', hello)
dispatcher.add_handler(hello_handler)

Starting the Bot

Now, we need to start polling, which allows the bot to continuously check for new updates (such as messages and commands) from Telegram.

# Start the bot
updater.start_polling()

With this code, once you type /hello in the chat with your bot, it will respond with “Hello, World!”.

Creating a COVID-19 Summary Bot

Now that weve covered a simple bot, lets enhance its functionality by building a bot that provides real-time COVID-19 updates using an API. This will demonstrate how to make your bot more interactive and useful.

First, install the requests library, which will allow us to fetch data from an API:

pip install requests

Next, import the necessary modules and set up a function to retrieve COVID-19 data:

import requests
import json

def summary(update, context):
    # Fetching data from the COVID-19 API
    response = requests.get('https://api.covid19api.com/summary')

    if response.status_code == 200:
        data = response.json()
        global_data = data['Global']

        # Sending the global COVID-19 stats to the user
        message = f"COVID-19 Global Summary:\nNew Confirmed: {global_data['NewConfirmed']}\nTotal Confirmed: {global_data['TotalConfirmed']}\nNew Deaths: {global_data['NewDeaths']}\nTotal Deaths: {global_data['TotalDeaths']}\nNew Recovered: {global_data['NewRecovered']}\nTotal Recovered: {global_data['TotalRecovered']}"
        context.bot.send_message(chat_id=update.effective_chat.id, text=message)
    else:
        context.bot.send_message(chat_id=update.effective_chat.id, text="Error retrieving data.")

Now, add this functionality to the dispatcher so users can get COVID-19 updates by typing /summary:

corona_summary_handler = CommandHandler('summary', summary)
dispatcher.add_handler(corona_summary_handler)

Running the COVID-19 Bot

To run the bot, simply use the same updater.start_polling() command as before:

# Start the COVID-19 bot
updater.start_polling()

Now, when you type /summary in your Telegram chat, your bot will fetch and display the latest global COVID-19 statistics.

  • Telegram Bot with Python Using the Telegram API
  • Telegram Bot with Python
  • Telegram Bot with Python Using the Telegram API
Source Code Available

Interested in This Project?

Get the complete source code for this project at a very affordable price — perfect for your portfolio, college submission, or learning. Message us on WhatsApp and we'll get back to you instantly!

Full source code included Step-by-step setup guide Instant delivery on WhatsApp Instant reply on WhatsApp
Chat on WhatsApp

We usually reply within a few minutes

Leave a Reply

Your email address will not be published. Required fields are marked *

Chat with us