La guía definitiva para crear un bot de retweet automático
Publicado: 2022-02-23La palabra "bot" trae muchas connotaciones diferentes, dependiendo de la experiencia que tenga con el término y con la vida. Para las personas inmersas en la ciencia ficción, trae a la mente robots complejos y futurismo. Para los especialistas en marketing, recuerda el software que envía spam a sus sitios. Para otros, solo significa una pieza de software utilizada para automatizar algo tedioso.
En realidad, los bots son muy simples; son solo software y, en general, ni siquiera son software particularmente complejo. Claro, algo como los bots de rastreo web de Google son complejos, pero tienen un montón de funciones diferentes integradas. Algo más simple, como un bot de Twitter, realmente no tiene mucho que ver. Echemos un vistazo a lo que se necesita para hacer uno, ¿eh?
Funcionalidad del bot de Twitter
Un bot de Twitter no necesita hacer mucho. Un bot de retweet simple solo necesita una lista de funciones que se vea así:
- La capacidad de autenticarse como usuario o conectarse a una cuenta a través de la integración de la aplicación de Twitter.
- La capacidad de leer tweets a gran escala.
- La capacidad de detectar la presencia de ciertos hashtags o palabras clave en los tweets que lee.
- La capacidad de retuitear tuits que contengan los hashtags o palabras clave especificadas.
- La capacidad de detectar si ha retuiteado una publicación determinada , esencialmente verificación para asegurarse de que no se quede atascado en un bucle retuiteando los mensajes que tuitea.
Cinco artículos, la mayoría de los cuales son fáciles de hacer, eso no está mal. Ahora, la forma más fácil de hacer esto es con Google Scripts, y ni siquiera necesita saber cómo codificar para hacerlo. Sin embargo, si desea obtener una funcionalidad más avanzada, es posible que desee profundizar en el código. ¡O no! Depende completamente de ti.
Definición de cadenas de búsqueda
El primer paso es averiguar cuál quiere que sea el objetivo del bot . Puede cambiar esto más tarde para modificar el bot, pero es útil tener una idea de cuán compleja será la tarea desde el principio. Querrá formatear esto como lo haría con la barra de búsqueda de Twitter, porque eso es lo que usará el bot. Eso significa usar operadores de búsqueda que funcionen en Twitter. Algunos ejemplos incluyen:
- “www.URL.com min_retweets:5 O min_faves:5 -RT” Esta cadena buscará tweets que incluyan la URL de su elección y solo tweets que tengan 5 o más favoritos o retweets. Esto elimina los retweets de los resultados de búsqueda y solo le brinda tweets que ya tienen al menos algo de participación. El bit –RT también sirve para eliminar retweets manuales.
- “#Palabra clave –RT –filtro:enlaces” Esta cadena buscará tweets que incluyan el hashtag de su elección, con el filtro para eliminar tweets que incluyan enlaces, porque sería redundante con el operador anterior. El –RT, nuevamente, elimina los retweets manuales.
- “#Palabra clave cerca de:”Seattle,WA”dentro de:20mi” Esta cadena buscará tweets que incluyan el hashtag de su elección, pero solo aquellos tweets realizados por personas dentro de las 20 millas de la ubicación geográfica indicada, en este caso, Seattle. No tiene el filtro –RT, por lo que puede identificar los tweets publicados originalmente por personas fuera del área pero retuiteados dentro del área de destino.
Puede mezclar y combinar estos al contenido de su corazón. También hay otros filtros. Lo que debe hacer es ir a la búsqueda de Twitter y simplemente jugar con variables y filtros hasta que encuentre una consulta de búsqueda que le proporcione lo que desea ver y nada más. Copie esas cadenas para que pueda usarlas más tarde.
Codificando un Bot
Lo primero que debes hacer, antes de empezar a hacer un bot, es registrar una nueva cuenta de Twitter. No importa qué información de perfil tenga, solo la estás usando para probar. Esto se debe a que Twitter tiene reglas muy estrictas sobre cómo pueden actuar los bots en su sitio. Si está tratando de probar un bot con su cuenta principal y el bot se pasa de la raya, de repente su cuenta principal está bloqueada y no hay nada que pueda hacer. Evite el problema creando una cuenta ficticia que no importa si está prohibida.

¿Cuáles son las reglas de Twitter sobre automatización y bots? Puede leer los detalles aquí, pero resumiré los puntos más destacados.
- La automatización que no hace más que publicar sobre temas de actualidad se considera perjudicial para la experiencia del usuario y, por lo tanto, está prohibida .
- La automatización que retuitea a menudo se considera spam y está prohibida en masa, pero se permite retuitear de forma limitada para las aplicaciones que Twitter aprueba.
- La automatización que envía mensajes directos está prohibida a menos que el destinatario acepte recibir los mensajes.
- Está prohibida la automatización que le gusta a los tweets en masa.
Desafortunadamente, una aplicación que no hace más que retuitear contenido de forma masiva está en contra de las reglas. Nuestra aplicación planea ser más específica y menos desordenada con los retuits, pero aún es potencialmente contraria a las reglas. Está bordeando una línea al crear un bot de este tipo, así que tenga cuidado y no lo use con una cuenta que realmente le interese.
También deberá tener una configuración de Google Drive para administrar su código y usar Google Scripts para configurar este bot. Puede usar otros entornos de desarrollo si está familiarizado con ellos, por supuesto, pero en ese momento probablemente no necesite leer esta guía.
Ahora, lo que tendrá que hacer es ir a la sección de desarrolladores de aplicaciones de Twitter en apps.twitter.com y crear una nueva aplicación de proyecto. Deberá especificar un nombre, una descripción y una URL para la aplicación y hacer clic para crearla.
Una vez que haya creado una aplicación, haga clic en la sección "claves y tokens de acceso" y haga clic para crear un token de acceso. Esto generará una clave para usted, que deberá tener a mano.
El bot que estamos creando aquí es una variación del bot creado por Amit Agarwal , que se puede encontrar con una búsqueda rápida en Google. Verás en la parte superior mucho contenido en marrón y un poco en negro. El marrón es comentarios; son efectivamente invisibles. El negro es el código real. Las líneas en la parte superior son líneas que necesita editar. ¿Ves dónde tiene filas para tus claves de acceso y de consumo? Agrega tus datos allí. También deberá agregar la cadena de búsqueda que realizó en el primer paso.

Si lo desea, puede desplazarse hacia abajo y leer el resto del código. Sin embargo, no deberías cambiar nada a menos que sepas lo que estás haciendo. Básicamente, el bot revisa Twitter cada cinco minutos en busca de contenido nuevo que se ajuste a la cadena de búsqueda que configuró. Cuando detecte alguno, lo retuiteará y lo marcará como favorito. También tiene un retraso semialeatorio incorporado entre acciones, entre 10 segundos y 1 minuto, para que sus acciones se vean un poco menos como un bot. Las acciones regulares en un temporizador se detectan fácilmente; agregar un temporizador aleatorio ayuda a minimizar ese riesgo.
Ahora, en su Google Drive, simplemente haga clic en ejecutar e inicie el bot. ¡Eso es todo! Está configurado para funcionar y funcionará hasta el momento en que lo apagues. Para apagarlo, regrese a Drive y haga clic en ejecutar y apague el bot.
Un método de bot alternativo
Este siguiente método también se basa en uno de los scripts de Amit, pero es un poco más indirecto. Como consecuencia, también es más difícil de detectar como un bot, suponiendo que no lo estés usando de una manera que obviamente sea un bot.
Esta vez lo que vas a hacer es iniciar sesión en Twitter y crear un widget. Para usar una de sus cadenas de consulta de búsqueda, haga clic en la pestaña "buscar" del creador del widget e ingréselo allí. Cree el widget y copie la URL. Una parte de la URL será una cadena numérica larga; cópielo como el ID de su widget.
A continuación, deberá obtener el script de Amit, que se encuentra aquí. Lo que hace este script es convertir su widget de Twitter , en este caso una versión incrustada de los resultados de la consulta de búsqueda, en una fuente RSS. Esto es importante porque Twitter dejó de admitir conversiones de tweet a RSS, por lo que necesitamos usar este script de terceros. Tenga en cuenta que la secuencia de comandos en el enlace anterior podría no funcionar correctamente debido a algunos cambios recientes en Twitter. Si no es así, verifique este enlace y use el script allí.

Como antes, una vez que el script está en su Google Drive, debe ejecutarlo. Te pedirá autorización en tu cuenta de Twitter. Permita que se autorice y estará listo para comenzar. Una vez que se haya ejecutado el script, deberá hacer clic en publicar y hacer clic en eliminar como una aplicación web. Permita que todos lo vean, haga clic para crearlo y copie el enlace que le proporciona. Este es el enlace que lo llevará a la fuente RSS, excepto que solo muestra su fuente. Lo que tienes que hacer es agregar un ? hasta el final de la URL e ingrese la ID del widget de Twitter que copió anteriormente. Esto ejecutará el código en el widget, en lugar de su fuente autorizada.
Todo esto ha convertido su consulta de búsqueda en una fuente RSS de resultados. Sin embargo, eso por sí solo no sirve para nuestros propósitos de retweet. A continuación, debemos configurar algo que tome la entrada RSS y la retuitee. Para hacer eso, usaremos IFTTT para un poco de automatización macro.
Una vez que se haya registrado en IFTTT, puede crear una nueva receta. Haga clic para seleccionar una entrada RSS y un feed en la URL de su widget-feed. Haga clic en Siguiente y haga clic en Twitter como salida. IFTTT le preguntará qué acción está sucediendo a través de Twitter aquí; debe hacer clic en "publicar un tweet" y agregar "_RT _" en el cuadro de lo que está pasando.

Ahora lo que sucederá es que se ejecutará el script, que ejecuta su búsqueda de Twitter. Cuando aparece un nuevo resultado, se publica en esta fuente RSS personalizada. Cuando aparece algo nuevo en esta fuente RSS, su bot de recetas IFTTT retuiteará manualmente ese tuit. Se recomienda que use el filtro –RT en su cadena de búsqueda para evitar retuitear su bot una y otra vez.
Un método Javascript
Este tercer método es un poco más robusto, pero también requiere que sepas un poco de codificación. Una vez más, querrá comenzar creando una cuenta de Twitter para su bot, porque ejecutarlo desde su cuenta principal causará problemas. En esta nueva cuenta, cree una lista de usuarios llamada gente genial y agregue su cuenta normal a la lista.
A continuación, inicie sesión con su nueva cuenta y realice el proceso de creación de una nueva aplicación en la página apps.twitter.com. Deberá configurar el nivel de acceso para leer y escribir, asegúrese de que la URL de devolución de llamada esté en blanco y cree su token de acceso. Como antes, copie las claves del token de acceso y los datos variados.
El código que estamos usando para este bot fue publicado en Github por Bryan Braun, aunque es posible que deba usar Git para obtener el código.

El Github está aquí, y el código necesario para hacerlo es
- obtener clon https://github.com/bryanbraun/twitter-listbot.git
- cd twitter-listbot
Ahora deberá abrir el archivo index.js en cualquier editor de texto que no agregue metadatos. Es decir, algo como Wordpad o Notepad++, no Microsoft Word. Deberá cambiar la entrada yo: XXXXX por el nombre de usuario de su cuenta de bot menos la @, y asegurarse de que el campo myList tenga el mismo nombre que su lista anterior. En realidad, no es necesario que lo llames gente genial, ese es el valor predeterminado.
Ahora el bot retuiteará los tuits de las personas de la lista. Esto no es exactamente lo mismo que un bot de retweet de campo de búsqueda, pero puede usarlo junto con otro bot para seleccionar los tweets que desea que vea.
En este punto, tiene que hacer una codificación compleja. Debe conectar la información de su token de acceso al nuevo bot y deberá ejecutarlo con nodeJS. Abrirá una ventana que parece estar atascada sin hacer nada, lo que solo significa que está escuchando nuevos tweets. Haga un tweet en su cuenta normal, y la cuenta del bot debería verlo y retuitearlo.
Tiene algunas opciones aquí, incluida la capacidad de poner el bot en un servidor para que se ejecute, de modo que no se vea obligado a dejar su computadora en funcionamiento y conectada a Internet para mantener vivo el bot. Puede leer más sobre la autenticación y el alojamiento del servidor aquí.
¿Está más familiarizado con PHP que con JavaScript o con Google Scripts? Si es así, puedes hacer un bot similar en PHP. Hace el mismo tipo de secuencia de acción de Twitter a RSS a Retweet que la configuración de IFTTT, excepto que es un código más personalizable que está ejecutando con PHP. Puedes leer todo sobre eso aquí; No tengo ni el espacio ni la inclinación para explicar PHP en detalle para esta publicación. Sin embargo, ese bot es un poco más complejo e incluye un código para publicar mensajes personalizados agradeciendo a los usuarios, así como algunas respuestas aleatorias cuando alguien menciona su nombre.
En total, al menos uno de estos métodos debería proporcionarle un bot que esté dispuesto a usar. Solo recuerde minimizar la cantidad de actividad similar al spam que realiza. Si le preocupa el spam, apague el bot por un tiempo o aumente la demora entre las publicaciones para que sea menos frecuente. También puede considerar aumentar los umbrales de participación para un retweet, en caso de que el umbral de 5 me gusta sea demasiado bajo.
