¿Te ha pasado que páginas o personas que no conoces de la nada dan like a tus publicaciones o te siguen en Instagram? Por lo general esas páginas son bots, programados para realizar estas acciones.En este post aprenderemos cómo crear un bot de Instagram para ganar más seguidores utilizando Python. Al final del post puedes encontrar la explicación en video (puedes ir directamente desde aquí) sobre cómo hacer el procedimiento (aunque si solo quieres copiar y pegar, seguramente es más fácil).

Instalación de la librería

Para crear el bot vamos a utilizar la fantástica librería de Python: instabot. Empecemos por instalarlo utilizando pip (que ya deberías tener instalado junto a Python).

pip install instabot

Algo excelente es de la librería es que tiene muchísimos ejemplos de los cuales tomar ideas.

Creación del bot

Hacer el bot es sumamente sencillo, solo importas la librería y creas una nueva instancia de la clase Bot.

# importar la clase a utilizar
from instabot import Bot
# crear el nuevo objeto
mi_bot = Bot()

Después de eso, puedes iniciar sesión con el método login(). Este método te pedirá utilizar tu nombre de usuario y contraseña. Hay muchas formas de dar esta información de formas más seguras que simplemente escribiéndolas. El principal problema con dejar la contraseña dentro del archivo es que si la agregas a un control de versiones como GitHub, estarás compartiendo tus credenciales con el mundo. Yo recomendaría utilizar variables de entorno, pero para hacer este post más sencillo, dejemos las credenciales a simple vista.

mi_bot.login(username='mi_nombre_de_usuario', password='mi_password')

Y con eso ya habrás iniciado sesión. Una vez hecho este procedimiento, se pueden realizar básicamente las mismas acciones disponibles del App: seguir gente, dar likes, publicar, dejar de seguir, etc. En este ejemplo crearemos una forma fácil de obtener más seguidores: siguiendo más gente.

Obteniendo más seguidores

La forma clásica de obtener más seguidores no tiene demasiada ciencia. Muchas personas simplemente dan Follow back cuando ven que tienen un seguidor nuevo. Así que vamos a hacer precisamente eso. Como la cuenta de instagram con la que estoy tratando de obtener más seguidores se trata de programación, quiero seguir a gente que ya siga páginas similares. Así que el primer paso es encontrar esa cuenta (la dejo a tu elección). Para este ejemplo, le diremos cuenta_objetivo.

Ahora que la cuenta ya está seleccionada, vamos a ejecutar el método incluido en la clase del bot.

mi_bot.follow_followers('cuenta_objetivo')

Y ya. Con eso el bot empezará el proceso de seguir a todos los seguidores de cuenta_objetivo. El listado de todas las cuentas seguidas se agregará a un archivo llamado followed.txt. Eso sí, las cuentas estarán representadas por su id interno en formato numérico. Pero para fines prácticos, el mismo bot puede ayudarte después a obtener el nombre de usuario de cada quien.

Para ejecutar el script, solo copia todo el código en un archivo llamado main.py, que debería lucir de la siguiente manera:

from instabot import Bot
mi_bot = Bot()
mi_bot.follow_followers('cuenta_objetivo')

Y luego lo ejecutas con el siguiente comando (recuerda haber instalado instabot:

python main.py

Limitaciones

Una limitación de este método es que no puede seguir cuentas privadas. Así que para la gente que tiene protección de privacidad en su cuenta, tendrás que utilizar un método diferente que cubriré en otro post.

Otra limitación a considerar es que el API de instagram solo admite cierta cantidad de acciones cada cierto tiempo. El bot ya incluye varios métodos automatizados para esperar después de que el tiempo límite para cada acción, pero es algo que debes tener en cuenta el ejecutar este procedimiento.

Tutorial en video

Y bueno, si no te gusta leer (no sé cómo llegaste hasta aquí), siempre puedes ver el tutorial en video.

Y ya que estás aquí, puedes aprovechar para seguir mi cuenta ;).