Come Creare un Bot Telegram con Python

Acquista ProfitBot e Guadagna di più con Telegram e l'Affiliazione Amazon

Vuoi realizzare un bot Telegram con Python? Ecco la guida per creare il tuo primo bot.

creare bot telegram python
Creare bot Telegram Python

Python è un linguaggio di programmazione molto versatile, che può essere utilizzato in vari contesti.

Se vuoi avvicinarti alla programmazione di un bot per Telegram, potresti quindi valutare di adoperare Python, utilizzando la libreria Python-Telegram-Bot.

Python-Telegram-Bot è una libreria open-source, con una community molto attiva, che consente di avere una vasta gamma di strumenti e di funzioni per creare un bot Telegram.

Tra le tante funzioni di questa libreria, c’è la possibilità di gestire messaggi in arrivo, inviare risposte, usare tastiere, gestire file e immagini. C’è una documentazione molto approfondita che puoi consultare a questo link.

In questo articolo ti indicherò le basi per programmare il tuo primo bot che risponde ogni volta che invii il comando /start. Si tratta di un bot molto semplice, ma che ti fornisce tutte le conoscenze necessarie per partire a sviluppare un bot Telegram con Python.

Una volta capito il funzionamento basilare, consultando la documentazione e sperimentando altre funzionalità, potrai creare bot sempre più complessi e che rispondano alle tue esigenze.

Indice:

Requisiti fondamentali

Per prima cosa devi avere tutti i software necessari per realizzare il bot Telegram con Python. Per questo motivo, considerando che sei su Windows, devi scaricare l’ultima versione stabile di Python disponibile ed installarla sul PC.

Recati su questo link e scarica la versione Windows installer (64-bit). Assicurati di cliccare sulla versione stabile indicata con Stable Releases.

Durante la fase di installazione, ricorda di attivare la spunta su “Add python.exe to PATH”, come indicato dalla seguente immagine.

Installazione Python
Installazione Python

Adesso apri il terminale di Windows, ovvero il prompt dei comandi CMD che trovi ricerca dei vari programmi, ed installa la libreria Python-Telegram-Bot utilizzando il comando seguente.

pip install python-telegram-bot

A seconda della tua connessione internet, in pochi minuti viene scaricata ed installata la libreria.

A questo punto non ti resta che installare il software Visual Studio Code, ovvero l’editor di codice sorgente gratuito sviluppato da Microsoft.

Scarica il programma a questo link. Con questo software potrai scrivere il codice necessario a far funzionare il tuo bot e testarne il funzionamento.

Durante l’installazione, ricorda di mettere la spunta su “Crea un’icona sul desktop”.

Installazione Visual Studio Code
Installazione Visual Studio Code

Al primo avvio di Visual Studio, potrai personalizzare l’aspetto ed installare la lingua italiana in automatico.

Poi recati nella zona Estensioni, indicata sulla sinistra dalla freccia, cerca “python” ed installa l’estensione su Visual Studio.

Estensione Python su VIsual Studio
Estensione Python su VIsual Studio

Creazione del bot con BotFather

Adesso devi recarti su Telegram è cercare BotFather, ovvero il bot ufficiale di Telegram che consente a tutti gli utenti di creare e gestire uno o più bot. Avvia il bot cliccando il tasto Start oppure inviando il comando /start.

BotFather
BotFather

Dal Menu, premi il pulsante /newbot ed invia il nome del tuo nuovo bot. Infine invia l’username, che deve necessariamente finire con la parola bot. In pochi secondi hai creato il tuo primo bot, e BotFather ti fornisce anche il token, ovvero un codice che devi salvarti e non devi condividere con nessuno.

Il token, univoco per ogni bot creato, devi utilizzarlo nel codice di programmazione che andrai a scrivere successivamente in Visual Studio.

Tramite BotFather potrai anche personalizzare il nome, l’immagine del profilo, la descrizione e molte altre informazioni e funzioni del tuo bot. Però si tratta di personalizzazioni secondarie e non essenziali.

Scrittura del codice in Python con Python-Telegram-Bot

Apri Visual Studio Code e nella sezione “Esplora risorse“, nella zona a sinistra indicata dalla freccia, apri o crea una cartella dove potrai salvare i tuoi progetti in Python.

Crea quindi un nuovo file, per esempio chiamalo “primo bot.py“. Ricorda di mettere l’estensione .py alla fine. Ora è tutto pronto per iniziare a scrivere il codice.

Progetto Telegram Bot
Progetto Telegram Bot

Finalmente inizia a scrivere il codice Python necessario a realizzare il tuo bot Telegram. In questo semplice esempio ho preso il codice di default indicato nella documentazione.

Puoi copiare ed incollare il seguente codice nel tuo file py.

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

import logging
logging.basicConfig(
    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
    level=logging.INFO
)

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
    await context.bot.send_message(chat_id=update.effective_chat.id, text="Ciao, sono il tuo bot e questo è il mio primo messaggio :)")

if __name__ == '__main__':
    application = ApplicationBuilder().token('TOKEN').build()
    
    start_handler = CommandHandler('start', start)
    application.add_handler(start_handler)
    
    application.run_polling()

Andiamo ad analizzare singolarmente i vari pezzi del codice per capire cosa fanno e come funzionano.

Per prima cosa importa la libreria telegram e le funzioni che utilizzerai nel bot.

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

Questa parte di codice permette di capire se c’è qualche errore nel bot e dove intervenire in caso di problemi.

import logging
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO)

Ora crea una funzione start, che consente al bot di rispondere un messaggio appena tu invierai il comando /start. Il messaggio che gli ho indicato di scrivere è “Ciao, sono il tuo bot e questo è il mio primo messaggio :)”. Ovviamente puoi anche modificarlo a tuo piacimento.

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
    await context.bot.send_message(chat_id=update.effective_chat.id, text="Ciao, sono il tuo bot e questo è il mio primo messaggio :)")

Attenzione: è fondamentale indicare il token del tuo bot, che consente di interfacciare il programma che hai scritto con il tuo bot Telegram.

Per fare ciò, devi incollare il token del tuo bot, che ti ha fornito BotFather, all’interno del seguente codice. Sostituisci la parola TOKEN con il tuo token, senza togliere gli apici.

if __name__ == '__main__':
    application = ApplicationBuilder().token('TOKEN').build()
    start_handler = CommandHandler('start', start)
    application.add_handler(start_handler)
    application.run_polling()

Per avviare il programma, premi il pulsante con il simbolo Play, ma prima ricorda di indicare il tuo token.

Codice Bot Telegram
Codice Bot Telegram

Funzionamento del bot

Il programma che hai realizzato inizierà a funzionare. Per interagire con il tuo bot scrivi il comando /start nella chat con il tuo bot.

Messaggio bot
Messaggio del bot

In questo modo si avvia il bot che risponderà con il messaggio “Ciao, sono il tuo bot e questo è il mio primo messaggio :)”

Conclusioni

In questo articolo ti ho indicato tutti i passaggi essenziali per rendere il tuo sistema operativo Windows pronto per poter programmare con il linguaggio Python.

Inoltre ti ho mostrato come realizzare il tuo primo bot Telegram con la libreria open-source chiamata Python-Telegram-Bot.

Ovviamente il bot che hai realizzato è molto semplice, ma ti avvicina alla programmazione e ti permette di capire come funziona la libreria Python-Telegram-Bot.

Per poter sviluppare dei bot più complessi, puoi consultare e studiare la documentazione ufficiale della libreria a questo link.

Potrebbe interessarti:

Acquista ProfitBot e Guadagna di più con Telegram e l'Affiliazione Amazon

Articoli simili