Herramienta de Web Scraping
La base de conocimientos de Gezondland contiene artículos que fueron publicados originalmente en otros sitios web. Para migrar este contenido a nuestra plataforma Astro/Starlight, hemos desarrollado una herramienta especial que convierte páginas web en archivos Markdown limpios.
¿Qué hace la herramienta?
Sección titulada «¿Qué hace la herramienta?»La herramienta de web scraping obtiene artículos de sitios web externos y los convierte a Markdown con el frontmatter correcto para Starlight. La herramienta:
- Detecta automáticamente el CMS del sitio web de origen
- Extrae el contenido del artículo sin navegación, pies de página y anuncios
- Conserva todos los hipervínculos del artículo original
- Agrega atribución de fuente con enlace al original
- Limpia la basura técnica generada por los sistemas CMS
Plataformas soportadas
Sección titulada «Plataformas soportadas»La herramienta reconoce y procesa contenido de diferentes tipos de sitios web:
Sitios WordPress
Sección titulada «Sitios WordPress»WordPress es el CMS más utilizado en el mundo. La herramienta detecta si un sitio tiene disponible la API REST de WordPress y la usa preferentemente. A través de la API obtenemos acceso al contenido sin procesar sin artefactos de formato.
Sitios reconocidos: jeleefstijlalsmedicijn.nl, 2diabeat.nl, y otras instalaciones de WordPress con API abierta.
Reconocimiento: La herramienta busca el endpoint estándar /wp-json/wp/v2/ o el enlace de API en el HTML.
Sitios Drupal
Sección titulada «Sitios Drupal»Drupal es popular en sitios web médicos y gubernamentales debido a su estructura robusta. La herramienta reconoce Drupal por clases CSS específicas y extrae contenido de la estructura de campos.
Sitios reconocidos: thuisarts.nl (NHG)
Reconocimiento: Presencia de clases field--name-body y markup específico de Drupal.
Sitios Storyblok/SvelteKit
Sección titulada «Sitios Storyblok/SvelteKit»Las soluciones modernas de CMS headless como Storyblok a menudo usan SvelteKit como frontend. La herramienta reconoce los marcadores HTML característicos que estos frameworks utilizan.
Sitios reconocidos: voedingleeft.nl
Reconocimiento: Bloques de comentarios HTML_TAG_START y HTML_TAG_END en el código fuente.
HTML genérico
Sección titulada «HTML genérico»Para sitios web que no caen en las categorías anteriores, la herramienta tiene estrategias de respaldo. Estas buscan patrones comunes como etiquetas <article>, clases .prose o divs .entry-content.
Atribución automática de fuente
Sección titulada «Atribución automática de fuente»Cada artículo migrado obtiene automáticamente una atribución de fuente en la parte superior del contenido. Esta es una cita en bloque con:
- Fuente: El nombre del sitio web con enlace al artículo original
- Autor: Si está disponible en la página de origen
Esto garantiza transparencia sobre el origen del contenido y respeta la propiedad intelectual de los autores originales.
Preservación de enlaces
Sección titulada «Preservación de enlaces»Todos los hipervínculos del artículo original se conservan. Esto aplica para:
- Enlaces internos dentro del artículo de origen
- Enlaces externos a fuentes científicas
- Enlaces a artículos relacionados
Los enlaces no se ajustan ni se eliminan, para que los lectores mantengan acceso al contexto y fuentes completas.
Limpieza automática
Sección titulada «Limpieza automática»Los sitios web a menudo usan sistemas de formato complejos que dejan “basura” en el HTML. La herramienta limpia esto automáticamente:
WordPress/Gutenberg
Sección titulada «WordPress/Gutenberg»- Marcadores de bloques Kadence y clases de estilo
- Componentes de cajas de información y decoraciones de enlaces
- Atributos de bloques Gutenberg
Limpieza general
Sección titulada «Limpieza general»- Atributos target y rel de enlaces (como
target="_blank") - Imágenes inline codificadas en base64
- Elementos de interfaz de reproductor de video
- Espacios en blanco y líneas vacías excesivos
- Atributos de entidad de Drupal
Compatibilidad MDX
Sección titulada «Compatibilidad MDX»- Los atributos de Markdown extendido como
{.button .primary}se eliminan - Esto previene errores de análisis en el procesamiento MDX de Astro
Generación de Frontmatter
Sección titulada «Generación de Frontmatter»La herramienta genera automáticamente el frontmatter obligatorio para Starlight:
- title: Tomado de la etiqueta
<title>o metadatos Open Graph - description: De la meta description, o un respaldo generado automáticamente
Esto asegura que los artículos migrados sean directamente compatibles con nuestro sitio sin ajustes manuales.
Flujo de trabajo
Sección titulada «Flujo de trabajo»La migración de un artículo procede de la siguiente manera:
- Ingresar URL - La herramienta recibe la URL del artículo a migrar
- Detección de CMS - Reconocimiento automático de la plataforma
- Extracción de contenido - Obtención del contenido del artículo a través del mejor método disponible
- HTML a Markdown - Conversión a través de Pandoc a Markdown limpio
- Limpieza - Eliminación de artefactos específicos del CMS
- Agregar frontmatter - Título y descripción de los metadatos
- Insertar atribución de fuente - Atribución automática a la fuente original
- Guardar - Salida como archivo
.mdxlisto para la base de conocimientos
PDF a Markdown
Sección titulada «PDF a Markdown»Además de páginas web, también se pueden convertir documentos PDF a Markdown. Esto es útil para fichas, manuales y otros documentos disponibles como PDF.
Tipos de PDF soportados
Sección titulada «Tipos de PDF soportados»- PDFs basados en texto (texto directamente copiable)
- PDFs con tablas y listas
- Múltiples páginas
Flujo de trabajo de PDF
Sección titulada «Flujo de trabajo de PDF»- Subir PDF - Coloca el PDF en la carpeta de Descargas o proporciona la ruta
- Extracción de contenido - La habilidad PDF lee el contenido de texto
- Preservar estructura - Se reconocen encabezados, listas y párrafos
- Generación de Markdown - Salida a
.mdxcon frontmatter correcto - Agregar info del autor - En fichas se agrega automáticamente información del autor
Publicación
Sección titulada «Publicación»Después de crear un nuevo artículo, se publica a través de Git:
Despliegue automático
Sección titulada «Despliegue automático»git add → git commit → git push → En vivo en docs.gezondland.orgEl sitio se construye y despliega automáticamente después de cada push a la rama master.
Ubicaciones de archivos
Sección titulada «Ubicaciones de archivos»| Sección | Carpeta |
|---|---|
| Afecciones | src/content/docs/aandoeningen/ |
| Comenzar | src/content/docs/aan-de-slag/ |
| Nutrición | src/content/docs/voeding/ |
| Fichas Yvo Sijpkens | src/content/docs/fiches-yvo-sijpkens/ |
| Clasificación | src/content/docs/classificatie/ |
Estructura de URL
Sección titulada «Estructura de URL»La URL sigue la estructura de carpetas: docs.gezondland.org/{sección}/{nombre-archivo}/
Por ejemplo: src/content/docs/fiches-yvo-sijpkens/pcos.mdx se convierte en docs.gezondland.org/fiches-yvo-sijpkens/pcos/
Limitaciones
Sección titulada «Limitaciones»La herramienta tiene algunas limitaciones:
- Imágenes no se descargan automáticamente. Estas deben obtenerse por separado y alojarse localmente.
- Videos incrustados no se incluyen. Solo se extrae el contenido textual.
- Contenido dinámico cargado a través de JavaScript no siempre es accesible.
- Contenido de pago detrás de un login no se puede obtener.
- PDFs escaneados (imágenes de texto) requieren OCR y no siempre se reconocen correctamente.
La herramienta está disponible como habilidad de Claude Code y se puede invocar durante una sesión.
Migrar artículo web
Sección titulada «Migrar artículo web»Proporciona la URL del artículo y la sección deseada. La herramienta determina por sí misma el mejor método de extracción.
Convertir PDF
Sección titulada «Convertir PDF»Coloca el PDF en Descargas y proporciona el nombre del archivo y la sección de destino. La herramienta lee el PDF y genera un archivo Markdown.
Si tienes preguntas sobre la migración de contenido específico o sitios web que no se reconocen correctamente, la herramienta puede ampliarse con nuevos patrones de extracción.
Medische Disclaimer: De informatie van Stichting Je Leefstijl Als Medicijn over leefstijl, ziektes en stoornissen mag niet worden opgevat als medisch advies. In geen geval adviseren wij mensen om hun bestaande behandeling te veranderen. We raden mensen met chronische aandoeningen aan om zich over hun behandeling goed door bevoegde medische professionals te laten adviseren.
Medical Disclaimer: The information provided by Stichting Je Leefstijl Als Medicijn regarding lifestyle, diseases, and disorders should not be construed as medical advice. Under no circumstances do we advise people to alter their existing treatment. We recommend that people with chronic conditions seek advice regarding their treatment from qualified medical professionals.