Saltar al contenido
FRIKIdelTO

FRIKIdelBOT – El mejor bot de ofertas de Telegram

FRIKIdelBOT mi bot de Telegram

Antes de empezar, doy por sentado que ya habéis visto la lista de mis canales y también la explicación de los mismos. Si no es así, os lo recomiendo para entender mejor lo que veréis más abajo.

Origen del bot

En el inicio de los tiempos, decidí crear un canal de ofertas en Telegram (@FRIKIdelTO_Chollos) en el que, periódicamente (cada vez menos por lo que contaré después) iba publicando las ofertas que me encontraba al bucear en la tienda de Amazon España.

Siempre fui de los que cree que si vas a hacer algo, mejor hacerlo bien o sino mejor no hacer nada, ¿qué queréis que os diga? soy muy tiquismiquis con estas cosas y en realidad creo que es una maldición porque me da mucha rabia cuando algo no queda como yo creo que debería, pero ya me estoy yendo por las ramas… Friki ¡¡¡céntrate!!!

Como decía, cada vez publicaba menos porque el trabajo de maquetación era titánico (por mis manías perfeccionistas). Para que entendáis mejor de lo que hablo, fijaos en esta captura:

Mi primera publicación en mi primer canal de ofertas de Telegram

Como dice el pie de foto, esta fue mi primera publicación.

Cada vez que quería hacer una publicación tenía que seguir estos pasos:

  1. Encontrar una buena oferta.
  2. Descargar una foto del producto de la web de Amazon.
  3. Escribir el tipo de producto (en el ejemplo: “Portátil”).
  4. Escribir la marca y modelo del producto.
  5. Escribir una lista (con sus “iconcitos”) de las características principales del producto.
  6. Escribir el precio anterior y el actual (también con sus “iconcitos”)
  7. Formatear todo el texto (negrita, cursiva, subrayado, etc.)
  8. Crear el enlace de afiliado de Amazon.
  9. Insertar la imagen descargada.
  10. Usar el bot xxdamage2bot para crear los botones
  11. Publicar el mensaje

Como veis era una labor muy tediosa y por eso cada vez publicaba menos. Por pura pereza.

De hecho, estaba ya casi decidido a cerrar el canal porque no podía (prefería invertir mi tiempo en mi canal de YouTube) ni me apetecía seguir el ritmo que se merecía para que fuera un canal como yo quería.

Pero todo esto cambió cuando empecé a sentir curiosidad sobre el mundillo de los bots. Así que un buen día empecé a buscar información y me encontré con este curso de Python gratuíto. Si te interesa el tema, te lo recomiendo encarecidamente. Es buenísimo. Va al grano y muy bien explicado.

A partir de ahí, todo fue prueba/error. Cada duda que tenía Google me la resolvía y sino la comunidad de stackoverflow o el mejor grupo de Telegram relacionado con Python (desde aquí un saludo enorme a estos últimos y 1000 gracias, en especial a @robagallinas74 quién siempre conseguía sacarme del lodo cuando yo creía que ya todo estaba perdido).

Podría enrollarme mucho más en tecnicismos y otras historias, pero para que me entendáis, a día de hoy, para publicar una oferta, tan solo tengo que enviarle un enlace al bot y el solito ya se encarga del resto.

Una imagen vale más que 1000 palabras:

“¡Viva la programación y a la madre que la parió!”

Yo cuando conseguí lo que veis en la imagen

Lo único que yo hice fue enviarle un enlace de un producto que está en oferta.

Lo que el bot hizo:

  1. Comprobar que el enlace que le envié es válido.
  2. Extraer los datos de la web de Amazon: nombre del producto, vendedor, categoría, precio anterior, precio actual.
  3. Comprobar si el producto tiene algún cupón de descuento y, como es el caso, comprobar si dicho cupón aún funciona y cual es su importe de descuento.
  4. Como el cupón aún funciona, resta el descuento al precio actual y el resultado lo contrasta con el último precio histórico conocido y, como es menor que éste, en el mensaje de la publicación informa de ello.
  5. Descargar la imagen del producto de Amazon y añadir el marco con el nombre del canal.
  6. Comprobar si procede publicar el producto en alguno de los canales (30% de descuento o PMH)
  7. Comprobar si el producto ya se ha publicado en los últimos 7 días y si es así omitir la publicación (este plazo lo he establecido para evitar que se publique, sin darme cuenta, el mismo producto con demasiada frecuencia)
  8. Publicar el producto en los canales que corresponde.

Todo esto en apenas 20 segundos desde que le envié el enlace. Imaginaos el tiempo que haría falta para hacer todo esto manualmente. Una locura.

Actualmente, el bot procesa los enlaces de las siguientes tiendas online:

  • Amazon España
  • PC Componentes
  • El Corte Inglés España
  • AliExpress
  • Banggood
  • TomTop
  • Gearbest

Por cierto, vosotros también podéis probar todo esto y, si conseguís encontrar alguna oferta que cumpla los requisitos, os saldrá algo como esto:

Ejemplo de oferta válida encontrada por un usuario

¿Seríais capaces de encontrar una buena oferta antes que yo? ¿Aceptáis el reto? Me haría mucha ilusión ver en los canales ofertas vuestras. Además, si sois muy tímidos, siempre podéis hacerlo sin mostrar vuestro nombre. En su lugar se mostraría “Aportado por usuario anónimo”.

Y es por esto, por el potencial que ofrece el bot que he desarrollado, que decidí crear más canales; porque uno solo sería desaprovechar el bot.

Sé lo que estáis pensando: “Todo esto está muy bien pero, y a mí ¿qué me importa?”. “Tranquis” que lo que viene ahora sí que os interesará.

Funciones extra del bot

Además de lo anterior que solo me es de utilidad a mi, he añadido otras funciones (y más que se me ocurrirán) de las cuales podéis sacar provecho:

1. Consulta de histórico de precios

Podéis consultar el histórico de precios de cualquier producto de Amazon España, Pc Componentes, AliExpress y Banggood.

Para ello sólo tenéis que escribir en el bot:

/precios enlace_producto
Ejemplo del comando /precios

El bot nos mostrará una gráfica y el último mayor y menor precio registrado y en qué fecha, además de la media del precio.

Si el precio actual está por debajo del precio medio, se considera que es buen momento para la compra del producto.

2. Avisos de stock y de bajadas de precio

2.1 Comando /avisar

Además, también podemos programar alertas para que el bot nos avise en alguno de los siguientes casos que nosotros le indiquemos:

  • Cuando un producto baje de un precio que nosotros fijemos.
  • Cuando un producto baje de precio.
  • Cuando un producto, que actualmente no está disponible por falta de stock, vuelva a estar disponible.

ACTUALIZACIÓN: Debido a que algunos usuarios han abusado exageradamente del uso de este comando (maldito déficit de tarjetas gráficas), a partir de ahora solo se pueden programar un máximo de 10 avisos por usuario.

modo de uso del comando /avisar

Creo que la imagen explica el procedimiento por sí sola. Pero por si acaso:

Si queremos que nos avise cuando un producto baje de un determinado precio, escribimos el comando /avisar, seguido del precio que nos interese y el enlace del producto. En cualquier otro caso, simplemente omitimos el precio deseado y el bot nos avisará cuando baje del precio que tiene actualmente el producto o, si éste no está disponible, cuando lo esté.

ejemplos del comando avisar
Ejemplos del comando /avisar

2.2 Comando /lista

En todo momento podemos ver un listado de todos los avisos que tenemos programados con este comando:

Ejemplo del comando /lista

2.3 Comando /eliminar

Y por supuesto, también podemos eliminar el aviso en cualquier momento con este comando, simplemente tenemos que indicarle qué producto queremos borrar de nuestra lista de avisos:

Aquí elimino el producto nº 1 de mi lista de avisos

3. Recibe solo las publicaciones que te interesan

Esta es quizá la opción más potente de todas, pues, mediante filtros, recibiremos solo las ofertas que procese el bot que contengan las palabras clave que nosotros definamos.

A efectos prácticos es como si tuviéramos nuestro propio canal de ofertas personalizado.

3.1 Comando /filtrar

Con este comando crearemos los filtros con las palabras que deben contener los productos que nos interesan.

modo de uso del comando /filtrar

Creo que la imagen explica muy bien el funcionamiento, pero por si acaso, vamos a ver un ejemplo:

Ejemplo de uso del comando /filtrar

Como veis en la imagen, he creado un nuevo filtro con 3 palabras: “Logitech“, “ratón” y “bluetooth” y el bot ha añadido el filtro a la lista de los que ya había agregado con anterioridad.

Por supuesto, los filtros no son acumulables, es decir, si el título de un producto es “Ratón inalámbrico bluetooth de Xiaomi” no recibiremos dicha publicación puesto que no tenemos ningún filtro que contenga únicamente las palabras que nos interesan. Dicho de otra manera, solo recibiremos las publicaciones que contengan todas las palabras de uno de los filtros.

Aquí hay algo importante que señalar y es que debemos separar por comas las palabras clave que nos interesan, es decir, no es lo mismo /filtrar ratón, bluetooth que /filtrar ratón bluetooth puesto que en el primer caso recibiremos las publicaciones de las ofertas que contengan las palabras “ratón” y “bluetooth“, mientras que en el segundo caso solo recibiremos las que contengan “ratón bluetooth” (las dos palabras seguidas).

Ahora veamos un ejemplo de una publicación que podríamos recibir con los filtros de nuestra lista:

Ejemplo de oferta recibida con nuestros filtros

Así es como se verán las publicaciones que recibamos. Como podéis comprobar, en el título del producto están todas las palabras de nuestro filtro nº 7 y además, dichas palabras aparecen subrayadas, lo que nos ayuda a saber cual de los filtros se ha aplicado.

3.2 Comando /filtros

Este comando nos muestra la lista de los filtros que hemos creado.

Ejemplo del comando /filtros

3.3 Comando /borrar_filtro

Con este comando podemos eliminar uno de los filtros de la lista.

modo de uso del comando /borrar_filtro
Aquí elimino el filtro nº 2 de mi lista de filtros

4. Busca un producto en todas las tiendas soportadas

4.1 Comando /buscar

Realiza una búsqueda intensiva del producto que le indiquemos en todas las tiendas online que soporta el bot y nos muestra los resultados ordenados de menor a mayor precio.

Debo aclarar que solo mostrará los resultados que contengan todas y cada una de las palabras de búsqueda que introduzcamos (para evitar ver en los resultados productos similares recomendados por las tiendas).

Si introducimos el comando sin parámetros en el bot, podremos ver el modo de uso y algunos ejemplos:

modo de uso del comando /buscar

Veamos cómo funciona con un ejemplo:

Supongamos que estoy interesado en comprar un terminal móvil Xiaomi Mi 10T. Pues bien, para hacer una búsqueda del mismo, tan solo tendría que introducir en el bot:

/buscar xiaomi mi 10T

ejemplo de una búsqueda con el comando /buscar

Inmediatamente, el bot realiza una búsqueda en todas las tiendas soportadas del producto en cuestión.

Una vez finalizado el proceso que, debo aclarar que lleva su tiempo (entre 1 y 2 minutos aproximadamente), veremos una lista de un máximo de 50 resultados ordenados de menor a mayor precio.

estos son los primeros resultados de un total de 50

Como vemos, los primeros resultados son de accesorios para el dispositivo que yo busco y, pese a que al final de la lista sí que está lo que yo realmente quiero:

resultados de lo que busco

Podría afinar mucho más la búsqueda indicando un precio mínimo y máximo como se ve en los ejemplos del modo de uso del comando.

Como no me interesan los accesorios sino el dispositivo, voy a fijar un precio mínimo de 100€ y como no estoy dispuesto a pagar más de 500€, este será el máximo. Así pues, introduzco en el bot:

/buscar 100-500 xiaomi mi 10T

El bot nos informa que está buscando con los límites de precio indicados:

buscando el producto con un rango de precios determinado

Ahora sí, el resultado es más acorde con lo que yo realmente busco:

primeros resultados de la búsqueda

Sin embargo, como veis, aún aparecen muchos resultados de accesorios. En este caso concreto esto es un poco indiferente, pero podría suceder que en los resultados aparezcan tal cantidad de accesorios que el producto que busco no esté en la lista porque éstos lo han desplazado fuera (recordad que como máximo se mostrarán 50 resultados). Si este fuera el caso, podríamos modificar el precio mínimo y máximo para acotar mucho más la búsqueda, pero hay otra opción incluso mejor: descartar palabras en los resultados.

Esto se hace de la misma forma que en las búsquedas de Google: simplemente poniendo delante de las palabras que queramos descartar un guión “-” (recordad que hay que ponerlo delante de cada palabra, no de un conjunto de ellas o frase). Es decir, si quiero descartar cristal templado debo escribir -cristal -templado

Veámoslo con el ejemplo que nos ocupa. Vamos a repetir la búsqueda anterior, pero descartando las palabras más características de los resultados que no me interesan:

/buscar 100-500 xiaomi mi 10T -lite -película -vidrio -templado

El bot nos informa de las palabras que está buscando, el rango de precios (si lo hemos indicado) y de las palabras que ignorará en los resultados.

búsqueda con rango de precios y descartando palabras

Y estos son los resultados:

resultados dentro del rango de precios y con las palabras descartadas

Como podéis ver, solo aparecen resultados de lo que realmente busco.

Y esto es todo lo que podéis hacer con el bot por el momento.

Si tenéis alguna sugerencia, duda o comentario, os leo abajo 👇

Si te gustó Compártelo: