Chester Pet Shop · Monitor de precios
Cada 4 horas el monitor lee los precios de 5 pet shops, reconoce cuáles de esos productos vende Chester y manda un mail cuando alguno cambia de precio.
Cómo funciona
Entra a las secciones de alimentos, salud e higiene de cada competidor y anota nombre y precio de cada producto.
Busca cada nombre en el catálogo de Chester. Si no está claro que sea el mismo producto, lo deja afuera.
Pone el precio de hoy al lado del de la revisión anterior. Los cambios de centavos no cuentan.
Si hubo cambios, manda un solo mail con todos, agrupados por competidor.
Competidores
Cada sitio está hecho con una plataforma distinta, así que cada uno tiene su propio lector. Cifras de la revisión del 28/09/2026.
| Competidor | Qué se revisa | Plataforma | Productos leídos | Coinciden con Chester |
|---|---|---|---|---|
| Bravo Pet | Toda la tienda | Pedix | 278 | 179 |
| Cerro Mascotas | Perros y gatos, con salud e higiene | Tienda Nube | 762 | 182 |
| El Kadi | Alimentos, farmacia e higiene | Tienda Nube | 212 | 39 |
| La MascoteraSumado el 23/09 | Perros, gatos y salud e higiene | Next.js | 557 | 23 |
| Veterinaria Casa CampoSumado el 23/09 | Toda la tienda | milocal.app | 835 | 181 |
| Total | 2.644 | 604 |
Reconocer el producto
Cada competidor escribe los nombres a su manera: en mayúsculas, en inglés, abreviados o con códigos. Primero se ordena el nombre: sin acentos ni plurales, con las abreviaturas escritas completas y el peso en un formato fijo. Después se compara contra los 332 productos del inventario de Chester. Las palabras que identifican al producto, como "urinary" o "caniche", pesan más que las que se repiten en todo el catálogo, como "royal" o "perro". Se acepta la coincidencia solo si el puntaje llega a 0,60.
Balanced y Complete son líneas distintas de Vitalcan. Whiskas o Pro Plan nunca matchean porque Chester no las vende.
Distintas: puntaje a la mitadUn alimento para gato nunca se compara con uno para perro. Entiende cat, feline, Vital Can y Vital Cat.
Cachorro, adulto, senior y kitten. Reconoce puppy, junior, CACH y AD.
Pequeña, mediana, grande y gigante, incluidas las líneas Mini y Maxi de Royal Canin y las abreviaturas RP, PEQ o GDE.
Latas, pouches y salsas no se comparan con bolsas de alimento seco.
Distintas: puntaje a la mitadUn alimento común no se compara con una dieta urinaria, renal o gastrointestinal, aunque sea de la misma marca.
Distintas: puntaje a la mitadUn pouch, una lata o una bolsita de menos de 1 kg no se compara con una bolsa.
Distintos: puntaje a la mitadSi Chester tiene el mismo producto en varios tamaños, gana el del mismo peso. Si tiene uno solo, se compara igual.
Desempate: puntaje × 0,85Alertas
Un mail por revisión con todos los cambios juntos. Cada fila muestra el producto del competidor, el precio anterior y el nuevo, la variación y con qué producto de Chester se comparó.
Si un sitio no devuelve precios en 3 revisiones seguidas, unas 12 horas, llega un aviso aparte. Suele querer decir que el sitio cambió su diseño y hay que ajustar el lector. Se manda una sola vez por falla.
Cuando se suma un competidor o un producto nuevo, la primera revisión solo guarda el precio. Los avisos empiezan desde la segunda.
Configuración
Estos valores se cambian en config.json, en la computadora donde corre el monitor. Ese archivo no se sube a GitHub porque tiene la contraseña del mail.
| Ajuste | Valor | Qué hace |
|---|---|---|
| Frecuencia | Cada 4 horas | Tarea del Programador de tareas de Windows. Corre también con la laptop a batería y, si estaba apagada, recupera la revisión al encenderse. |
| Umbral de coincidencia | 0,60 | Puntaje mínimo para considerar que dos nombres son el mismo producto. Más alto es más estricto. |
| Cambio mínimo | $1 | Diferencias menores se ignoran. Evita avisos por redondeos de centavos. |
| Aviso de sitio caído | 3 revisiones | Revisiones seguidas sin datos antes de mandar el aviso. |
| Limpieza del historial | 30 días | Borra productos que el competidor dejó de publicar. |
| Reintentos | 3 intentos | Si una página no responde, espera 3 y 6 segundos y vuelve a probar. |
| Registro de actividad | 5 MB × 4 archivos | El log rota solo y nunca ocupa más de unos 20 MB. |
| Destinatario | Casilla de Chester | A dónde llegan las alertas. El remitente es una cuenta de Gmail con contraseña de aplicación. |
Confiabilidad
Historial del proyecto