Cómo construir un bot básico de Telegram con Python 3

Cómo construir un bot básico de Telegram con Python 3

Si es usuario de Telegram, seguramente habrá tenido una 'conversación' con un chatbot en algún momento. Con su increíble personalización, los bots de Telegram ofrecen una variedad de ventajas, ya sea para automatizar tareas o simplemente para divertirse un poco con los juegos en su grupo de chat.





Si bien algunos pueden encontrar que desarrollar un bot es una tarea abrumadora, en realidad no lo es. ¡Con la planificación adecuada, puede tener un bot de Telegram en funcionamiento en menos de una hora! A continuación, le mostramos cómo crear un simple bot de Telegram que genere lindas imágenes de gatos de Internet cuando se le solicite.





Empezando

Para este tutorial, usaremos Python 3, el Python-telegram-bot y peticiones biblioteca, y TheCatAPI .





Cada bot en Telegram tiene un token único que lo ayuda a comunicarse con API de bot para utilizar la interfaz de mensajería de la aplicación. Bot API, una de las características más populares de Telegram entre los desarrolladores, le permite usar sus mensajes como una interfaz.

cómo deshacer un archivo de video

Para obtener el token, inicie una conversación con @BotFather que, como su nombre indica, es un bot oficial que te permite crear y personalizar tus propios bots. Puede acceder al bot utilizando el enlace proporcionado o, alternativamente, buscar '@botfather' en Telegram.



Una vez en el chat, cree su bot escribiendo el / newbot mando. Continúe configurando el nombre y el nombre de usuario de su bot (decidimos nombrar el nuestro @pawsomebot). Después de esto, obtendrá un token único para su bot.

Ahora que tenemos todos los requisitos previos, ¡es hora de pasar a la parte emocionante!





Instalación de bibliotecas

Si está utilizando Windows, abra el símbolo del sistema y escriba los siguientes comandos:

|_+_|

Si está usando macOS o Linux, use los siguientes comandos en su terminal. Además, en Linux, asegúrese de haber iniciado sesión como usuario con privilegios de sudo.





|_+_|

Escribir el programa

Cree una nueva carpeta en su computadora y ábrala en su editor favorito. Cree un nuevo archivo y asígnele el nombre main.py. Este archivo contendrá el código fuente de su bot.

Ahora, importemos las bibliotecas que instalamos anteriormente junto con algunas de sus funciones integradas.

|_+_|

El flujo del programa de aquí en adelante es acceder a TheCatAPI, obtener la URL de una imagen aleatoria y enviar esa imagen al chat del usuario.

Comencemos con una función para obtener la URL de la imagen, que se puede hacer mediante el módulo de solicitudes. En esta función, cargamos los datos JSON de un archivo aleatorio proporcionado por TheCatAPI y extraemos su URL para su uso posterior. Para ver el formato del objeto JSON, diríjase a https://api.thecatapi.com/v1/images/search en su navegador. Notarás algo como esto:

|_+_|

Tenga en cuenta que el objeto JSON es una matriz que contiene un diccionario. Este diccionario contiene la URL con la clave 'url'. Para extraer la URL, necesitamos hacer referencia al primer elemento de la matriz y luego a la clave relevante.

|_+_|

A continuación, debemos enviar esta imagen al chat de un usuario. Para ello, necesitamos una URL de imagen, así como la identificación única del chat del usuario. Creemos una función contenedora para hacer esto. Primero, llamamos al getUrl () . función para obtener la URL de una imagen aleatoria --- esta URL cambia cada vez que su programa itera a través de la función.

A continuación, se obtiene el ID de chat del usuario destinatario, que define la ubicación de destino del bot para los mensajes y se analiza la URL a través de la API del bot incorporada. enviar foto() función.

|_+_|

Para obtener más información sobre las diversas funciones integradas de Bot API y cómo funcionan, no dude en consultar Telegram documentación oficial después de este tutorial.

Finalmente, creemos una función que controle el funcionamiento general del bot. Esta función, llamada convencionalmente main (), es donde enviamos una solicitud HTTP a la API del bot utilizando el token que obtuvimos al comienzo del tutorial y luego definimos cómo será la interacción del usuario del bot. En un caso tan simple como el nuestro, esto significa esencialmente iniciar el bot y llamar al sendImage () función cuando se lo solicite el usuario.

|_+_|

Su programa final debería verse así:

|_+_|

Tu propio bot de Telegram

¡Felicidades! Ha creado su propio bot para aliviar el estrés que envía imágenes de código abierto de los gatos de Internet más lindos cuando se le solicita. Intente ejecutar su programa y escriba /maullar en el chat de tu bot para activarlo.

Si bien este puede ser un bot simple con funcionalidad limitada, muestra cuán poderoso es el ecosistema de desarrollo de bots de Telegram. Puede agregar cualquier cantidad de subrutinas y funciones complejas para mejorar la funcionalidad de su bot, el cielo es el límite. Para obtener más información sobre los increíbles bots de Telegram que los colaboradores han creado a lo largo de los años, consulte nuestro lista de bots de Telegram útiles .

También puede encontrar una variedad de programas con licencia de código abierto para bots de Telegram en plataformas como GitHub. La mayoría de las licencias de código abierto le permiten usar, estudiar, descargar o modificar el código fuente de un programa.

Aloje su bot de Telegram en línea

Ahora que tiene su bot en funcionamiento, intente cerrar main.py en su PC y use el bot en su aplicación de mensajería Telegram. ¿Sigue respondiendo a la /maullar ¿mando? No, no es así.

Como principiante, es posible que se sienta confundido en cuanto a por qué main.py en su PC debe estar en funcionamiento cuando ya ha creado un bot que se ejecuta en Internet. La razón de esto es que el programa utiliza su PC como servidor local para enviar solicitudes HTTP a las API utilizadas en este programa.

Como tal, tener que ejecutar el programa cada vez que desee utilizar la aplicación no es factible ni conveniente. Para resolver este problema, necesitamos eliminar la dependencia del bot en su dispositivo.

Una forma de hacerlo es utilizar una placa de circuito impreso (PCB) de bajo costo, como Raspberry Pi, para configurar su propio servidor web y usarlo para ejecutar su programa. Tiene los mismos beneficios que ejecutar el programa en su PC sin los costos de mantenerlo encendido todo el día y la noche, ya que los PCB tienden a tener una huella de energía significativamente menor.

Alternativamente, también puede implementar su programa en la nube. Diríjase a una plataforma de alojamiento de aplicaciones web como Heroku, AWS, Google Cloud o Microsoft Azure y elija la suscripción que mejor se adapte a sus necesidades. Recomendamos elegir una prueba o suscripción gratuita y actualizarla a medida que aumenta la escala o el alcance de su programa.

Cuota Cuota Pío Correo electrónico Cómo alojar su sitio web Python de forma gratuita en Heroku

¿Necesita alojar un sitio web pequeño sin costo? Heroku podría ser justo lo que estás buscando.

Leer siguiente
Temas relacionados
  • Programación
  • Pitón
  • Telegrama
  • Chatbot
  • Bots de redes sociales
Sobre el Autor Yash Chellani(10 artículos publicados)

Yash es un aspirante a estudiante de ciencias de la computación al que le encanta construir cosas y escribir sobre todo lo relacionado con la tecnología. En su tiempo libre, le gusta jugar al Squash, leer una copia del último Murakami y cazar dragones en Skyrim.

Más de Yash Chellani

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse