Revista Blog

instauto el bot definitivo Instragam

Por Mauricio Sevilla @configuroweb
instauto el bot definitivo Instragam

En este post encontrarás scripts hechos en vainilla javascript para seguir cuentas, para dejar de seguir cuentas indistintamente, dar likes por hashtag, así como la instalación del bot instauto

El proceso se explica completamente en el vídeo a continuación:

¿Qué es instauto?

instauto es una biblioteca de automatización / bot para Instagram, escrita en JavaScript moderno y limpio usando Puppeteer de Google.

Puppeteer es una librería de Node.js que proporciona una API de alto nivel que permite automatizar acciones sobre los navegadores de Google: tanto Chrome como su versión de código abierto Chromium.

El objetivo de instauto es ser muy fácil de configurar, usar y extender. instauto respeta los límites de Instagram. Está inspirado en InstaPy, Instabot pero más liviano y sencillo de configurar.

De Instapy a Instabot y de Instabot a instauto

Si sigues mis post, o mi canal de Youtube habrás visto que le he dedicado un gran número de publicaciones a automatizar procesos en Instagram.

Primero con Instapy y después de una gran cantidad de fallos, Instabot. Incluso implemente un post donde explicaba los comandos para implementar una plantilla personalizada de Instabot

La gran cantidad de personas indicando fallos, me llevó a re confirmar el funcionamiento de mi bot y lamentablemente Instagram implementó una nueva validación que rompe el proceso.

Por esto decidí primero montar unas plantillas en javascript vanilla para inyectar en la consola del navegador.

Actualmente me funciona la opción de seguir automáticamente los seguidores y a quienes sigue una cuenta en específico. El script de dejar de seguir a todos tus seguidores sin distinción y el de darle likes a los post relacionados con un hashtag específico, ubicación o publicaciones de una cuenta.

Estos script los comparto a continuación:

Script para seguir automáticamente los seguidores y a quienes sigue una cuenta en específico

const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout)); const list = document.querySelectorAll('.y3zKF'); function clikOnLink(link){ link.click(); } const asyncLoop = async () => { for (let i = 0; i < list.length ; i++) { await timeoutPromise(18000); clikOnLink(list[i]); } } asyncLoop();

Script para dejar de seguir a todos tus seguidores sin distinción

Puedes pararlo en cualquier momento con solo actualizar el navegador, podrías, primero seguir masivamente y después dejar de seguir un buen número de cuentas, ya va en la administración que decidas llevar, claro está teniendo en cuenta las condiciones de uso de Instagram para no infringir sus reglas.

// CÓMO EJECUTARLO EN GOOGLE CHROME // 1. INSTAGRAMA ABIERTO // 2. LISTA ABIERTA DE SEGUIDORES // 3. HERRAMIENTAS DE DESARROLLADOR ABIERTAS // 4. COPIE TODO AQUÍ CTRL + A // 5. PEGAR TODO EN HERRAMIENTAS PARA DESARROLLADORES CONSOLA // 6. HAGA CLIC ENTRAR // NO TENDRÁS PRONTO AMIGOS const FOLLOWING_BUTTON_TEXT = 'Siguiendo' // CAMBIAR ESTO A SU IDIOMA const UNFOLLOW_BUTTON_TEXT = 'Dejar de seguir' // Este también const MAX_ATTEMPTS_PER_UNFOLLOW = 3 // Si estás desde el PC estás bien const unfollowSomebody = () => { const followingButton = document .evaluate(`//button[text()="${FOLLOWING_BUTTON_TEXT}"]`, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null) .singleNodeValue if (followingButton) { console.log('Encontrado el siguiente botón. Haciendo clic ...') followingButton.click() console.log('Haga clic en el siguiente botón.') let unfollowButton = document.evaluate(`//button[text()="${UNFOLLOW_BUTTON_TEXT}"]`, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue let attempts = 1 while (attempts < MAX_ATTEMPTS_PER_UNFOLLOW & !unfollowButton) { console.log(`Se Intentó encontrar Botón de dejar de seguir pero no se pudo. Número de reintento #${attempts++}`) unfollowButton = document.evaluate(`//button[text()="${UNFOLLOW_BUTTON_TEXT}"]`, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue } if (attempts < MAX_ATTEMPTS_PER_UNFOLLOW) { console.log('Botón de dejar de seguir encontrado. Haciendo scrolling y dejando de seguir ...') unfollowButton.scrollIntoView(true) unfollowButton.click() } else { console.log(`Se ha intentado ${MAX_ATTEMPTS_PER_UNFOLLOW} veces y no tuvo éxito`) } return false } return true } const timeout = (ms) => new Promise(resolve => setTimeout(resolve, ms)) const randomTimeout = () => (Math.floor((Math.random() * 30) + 30) * 300) + 300 const unfollowEveryone = async () => { let shouldStop = false while (!shouldStop) { shouldStop = unfollowSomebody() const unfollowTimeout = randomTimeout() console.log(`Esperando ${unfollowTimeout} segundo. podría parar: ${shouldStop}.`) await timeout(unfollowTimeout) } console.log('No sigues a nadie.') } unfollowEveryone()

Script de likes a los post relacionados con un hashtag específico, ubicación o publicaciones de una cuenta

const next = document.querySelector('a.coreSpriteRightPaginationArrow'); function doSomething(random) { const like = document.querySelector('article > div.eo2As > section.ltpMr.Slqrh > span.fr66n > button'); if(like){ console.log('click\n'); like.click(); } next.click(); console.log('Esperando '+random+' miliseconds\n'); } (function loop() { var min = 15000; // mínimo de 15 segundos var max = 25000; // máximo de 25 segundos var random = Math.floor(Math.random() * (+max - +min)) + +min; setTimeout(function() { doSomething(random); loop(); }, random); }()); var firstLike = document.querySelector('button > svg[aria-label="Like"]'); var closestElement = firstLike.closest('button'); closestElement.click();

Instalación del bot instauto para Instagram

Descarga del repositorio instauto

Para realizar la instalación de instauto, primero debes descargar el proyecto del repositorio a continuación, te recomiendo instalar git previamente.

Repositorio en GitHub de instauto

Si realizaste la descarga he instalación de git, para descargar el proyecto de instauto en tu ordenador solo es que ejecutes desde consola el siguiente comando:

git clone https://github.com/mifi/instauto.git

Instalación de Node JS

¿Qué es Node JS?

Es un entorno de tiempo de ejecución para JavaScript que incluye todo lo que se necesita para ejecutar un programa escrito escrito en este lenguaje.

En palabras más sencillas genera un servidor que permite la ejecución de Javascript en el backend.

Para realizar el proceso de instalación de Node JS solo es necesario acceder al siguiente enlace

https://nodejs.org/es/download/

Realizar la instalación con los parámetros por defecto, según el sistema operativo y arquitectura de tu ordenador.

Personalizar la plantilla example.js

Básicamente, debes cambiar tus credenciales en el documento del repositorio que previamente en esta instancia debiste haber descargado

Específicamente debes poner tus credenciales de Instagram en el siguiente tramo de código y después guardar los cambios.

 username: 'your-ig-username', password: 'your-ig-password',

Instalación de Yarn

Es un instalador de paquetes para JavaScript, muy similar a PIP en el lenguaje de Python, es necesario para los demás procesos de instalación desde la línea de comandos.

El siguiente es el comando para realizar el proceso.

npm i -g yarn

Instalación de Puppeteer

Esta librería permite moverse con gran dominio sobre el navegador de Chrome y Chromium, donde se abrirá tu Instagram y hará la magia.

El comando es el siguiente

yarn add puppeteer instauto

Ejecución del bot instauto para Instagram

Ya para este punto solo queda ejecutar el siguiente comando si has realizado todos los procesos como se ha explicado.

node example

Siempre puedes donar

Este bot y los scripts son información privilegiada y exclusiva, no son copia ni tampoco están basados en ningún otro tutorial y son el resultado de horas de investigación entregadas de manera específica y desinteresada para el bien común. Si puedes hacerlo, te agradeceré mucho tu donación, el botón Paypal a continuación está configurado para un importe de 5 USD.

Espero te haya servido, saludos !!!


Volver a la Portada de Logo Paperblog