¿Cuál es la mejor forma de construir una pipeline para publicar datos recopilados en categorías de Discourse con temas personalizados basados en pestañas?

Queremos construir un pipeline automatizado que pueda actualizar el tema personalizado de Discourse que construimos, el cual tiene diferentes pestañas para distintos tipos de contenido extraído:

  1. Extrae contenido de fuentes (feeds RSS, sitios web, etc.)
  2. Estructura los datos con metadatos: título, fuente, tipo (noticias/conferencias), URL, fecha
  3. Utiliza la API de Discourse para:
    • Crear un tema bajo la categoría correcta y actualizar el contenido dentro de pestañas específicas del tema personalizado.
    • Añadir etiquetas relevantes (para que aparezca bajo la pestaña correcta)

¿Cuáles son las mejores formas de almacenar y renderizar los datos extraídos:

  1. ¿Base de datos local o CMS externo para almacenar y programar contenido, o
  2. Archivos YAML/JSON (Fuente estática)?
1 me gusta

Quizás echa un vistazo a RSS Polling

Gracias pfaffman por las sugerencias de plugins. Sin embargo, no tenemos datos de feed rss, almacenamos datos raspados en una base de datos independiente… ¿podemos usar este plugin para conectarnos a la base de datos independiente y obtener los datos necesarios y renderizar el contenido?

Era un ejemplo. Podrías convertir tus datos extraídos en un feed RSS o modificar el plugin para que lea el formato que desees.

Lo que probablemente haría sería escribir el scraper en Ruby e integrarlo en un plugin.

O tal vez Use the Discourse API ruby gem y ponerlo en una Github action y que envíe los datos. Planeo hacer eso para un cliente que está alojado y no puede usar un plugin personalizado.

Gracias Jay. El desarrollo del scraper ya se completó con Python… ahora estamos evaluando cómo renderizar estos datos scrappeados que se almacenan en MongoDB.