Automatización de datos
Oslo Scraping: pipeline de datos para un chat con IA
Pipeline en Python que consolida propiedades y emprendimientos desde Tokko y Google Sheets, se ejecuta solo con GitHub Actions y publica un JSON limpio que alimenta el chat con IA de la inmobiliaria.
Stack tecnológico
Las tecnologías usadas y por qué.
El problema
Este proyecto es la pieza de datos del ecosistema de Oslo Propiedades. El chat con IA de la web necesita una base de conocimiento confiable: un catálogo único, limpio y actualizado de todas las propiedades y emprendimientos. El problema es que esa información no vive en un solo lugar. Parte está en Tokko (el CRM inmobiliario) y parte en una planilla de Google Sheets que el equipo mantiene a mano. No todo lo que está en una fuente está en la otra.
Si el chat consume datos desactualizados o incompletos, responde mal. Y un chat que responde mal sobre propiedades y precios es peor que no tener chat.
El pipeline
Construí un pipeline en Python que resuelve la consolidación:
- Lee las propiedades y emprendimientos desde Tokko y desde la planilla de Google Sheets.
- Toma la columna
PROYECTOdel Sheet como fuente autorizada para agrupar (por ejemploOSLO52278), en lugar de adivinar por nombre o por la URL. - Consolida todo en un JSON agrupado, limpio y consistente.
- Genera además un endpoint separado con un resumen de emprendimientos, a partir de una planilla independiente.
El resultado es un catálogo único que refleja la realidad, sin duplicados ni huecos.
Automatización
El pipeline no se corre a mano. Un workflow de GitHub Actions lo ejecuta de forma programada y, en cada corrida, hace un PATCH sobre un GitHub Gist con la data fresca. Esto tiene una ventaja concreta: la URL del JSON queda estable, así que el consumidor (el chat) nunca tiene que cambiar a dónde apunta, pero siempre recibe datos actualizados.
El chat con IA
Ese JSON es la base de conocimiento del chat integrado en la web de Oslo. Con el catálogo real y actualizado, el chat puede responder consultas sobre propiedades disponibles, filtrar por zona o precio y dar información de contacto, sin inventar y sin quedar desfasado del inventario real.
Este trabajo complementa la web principal de Oslo (la migración de WordPress a Next.js con Tokko): mientras esa resuelve la experiencia y el SEO, el pipeline resuelve la calidad y la frescura de los datos que alimentan la IA.