Cómo crear un bot para Twitter con Python

AV
Adrián Vizcaíno
14 enero, 2019
Python + Twitter

Aunque Python lleva mucho entre nosotros, no es hasta estos últimos años que está cogiendo gran protagonismo entre los desarrolladores. Al tratarse de un lenguaje multiparadigma es muy fácil que se adapte las necesidades del proyecto y, teniendo en cuenta que es un lenguaje diseñado para que su sintaxis favorezca el desarrollo de códigos legibles, he decidido usarlo para este bot.

Para desarrollar el bot vamos a hacer uso de la librería gratuita Twython que más adelante explicaremos como instalar. Esta librería nos permite identificarnos fácilmente con la API de Twitter y nos sirve de interfaz para todos los end point de la API.

Instalando Python

Esta parte del tutorial esta enfocada al sistema operativo Windows. Si tu usas Linux o Mac, la instalación es igual de sencilla pero se realiza mediante otros pasos.

Lo primero tenemos que dirigirnos a la página web oficial de Python y descargar el instalador. Recomendamos siempre descargar la última versión estable. No vamos a detenernos en la instalación ya que no tiene perdida y simplemente ir dando a ‘siguiente’.

Una vez instalado vamos a tener que crear dos variables de sistema para que desde nuestra consola de comandos podamos ejecutar el comando de phyton. Para eso debemos dirigirnos a la configuración de Windows:

Configuración Windows 10

Ahora buscamos «Variables» en la barra de búsqueda superior y seleccionamos «Editar las variables de entorno de esta cuenta»:

Buscador del panel de control

En la nueva ventana que nos saldrá, debemos editar la variable «Path» situada en la parte superior, dentro de la sección «Variables de Entorno»:

Panel de variables de entorno

Y debemos añadir dos nuevas rutas hacia Python y hacia sus scripts. Si no has cambiado la ruta de instalación por defecto esta se encuentra en:

Si has usado otra ruta, debes encontrar esas carpetas en la ruta que escogieras para la instalación. Al final debe quedar:

Edición de variables de entorno

Hecho esto, aceptamos para que se apliquen todos los cambios y comprobamos que se halla instalado correctamente. Para ello pulsamos las teclas Windows + R y en la ventana que sale escribimos «cmd» (sin comillas) y aceptamos. En la consola que nos acaba de salir escribimos «python» y si todo ha ido bien veremos:

Consola MS-DOS con Python

Descargar la librería Twython

Ahora vamos a descargar la librería que nos permitirá conectar fácilmente con la API de Twitter. Para ello volvemos a abrir una consola (teclas Windows + R y escribimos «cmd») y escribimos:

Comenzará a descargar todos los paquetes necesarios, simplemente esperamos hasta que ya tenga todo descargado.

Creando nuestro bot

El propósito que voy a darle al bot va a ser muy sencillo. Vamos a buscar en Twitter un hashtag que definiremos para que extraiga una cantidad de tweets y vamos a hacer follow a las cuentas de esos tweets.

Lo primero es crear el archivo de nuestro código. Donde quieras crea un archivo llamado «twitterBot.py». Por comodidad a la hora de lanzarlo recomendamos crearlo en C: en la raíz de algún disco.

Ahora lo que vamos a hacer es importar y cargar la librería de Twython, para ello agregamos las siguientes líneas al comienzo del archivo:

Bien ahora necesitamos identificarnos mediante nuestra APP de Twitter. Si no dispones de una APP aún, aquí te explicamos como crear una cuenta de desarrollador en Twitter. Bien suponiendo que ya la tienes vamos a añadir las siguientes líneas, las cuales tendrás que modificar con tus datos:

Con esto ya estamos identificados y podemos hacer consultas a la API de Twitter. Así que vamos a hacer una búsqueda por el hashtag que queramos:

De esta forma le estamos indicando a Twitter que busque los últimos tweets con el hashtag «#python», que nos devuelva únicamente 20 tweets y se guarden en la lista «tweets».

Nuestro siguiente paso será recoger el nombre de usuario que ha publicado el tweet. Esta información ya la tenemos por lo que vamos a ir recorriendo la lista de tweets obteniendo el nombre y creando el follow:

Aviso: Esto es Python, mucho cuidado con la indentación del código

Quiero comentar la última línea. Tras cada follow que hagamos debemos esperar 60 segundos. Esto es debido a que Twitter limita el uso de API a 15 peticiones cada 15 minutos, es decir 1 petición por minuto. Para evitar problemas de ejecución por sobrepasar el límite, vamos esperando 1 minuto entre cada follow.

Finalmente le añado una sentencia try al código para que en caso de fallar algo nos deje en consola la traza del error y podamos identificar el problema. El código final del bot sería:

Ejecutando nuestro bot

Ahora queda lo mejor, que es ver nuestro trabajo funcionando. Para ejecutar el bot vamos a abrir nuevamente una ventana de comandos (teclas Windows + R y escribimos «cmd») y tecleamos lo siguiente:

Y veremos cómo poco a poco empieza a seguir a los creadores de los tweets buscados:

Pues hasta aquí el tutorial. Espero que os haya servido y os permita crear vuestros propios bots para Twitter. En futuras publicaciones enseñaremos como hacer cosas más complejas con el bot.

¿Te ha parecido útil? Danos tu opinión
Cómo crear un bot para Twitter con Python
5 (100%) 15 votes

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *