Salta ai contenuti

Strumento di Web Scraping

La base di conoscenza Gezondland contiene articoli originariamente pubblicati su altri siti web. Per migrare questo contenuto alla nostra piattaforma Astro/Starlight abbiamo sviluppato uno strumento speciale che converte le pagine web in file Markdown puliti.

Lo strumento di web scraping recupera articoli da siti web esterni e li converte in Markdown con il frontmatter corretto per Starlight. Lo strumento:

  • Rileva automaticamente il CMS del sito web di origine
  • Estrae il contenuto dell’articolo senza navigazione, footer e pubblicita
  • Conserva tutti i collegamenti ipertestuali dall’articolo originale
  • Aggiunge l’attribuzione della fonte con link all’originale
  • Pulisce il codice tecnico generato dai sistemi CMS

Lo strumento riconosce ed elabora contenuti da diversi tipi di siti web:

WordPress e il CMS piu utilizzato al mondo. Lo strumento rileva se un sito ha l’API REST di WordPress disponibile e la utilizza preferenzialmente. Tramite l’API otteniamo accesso al contenuto grezzo senza artefatti di formattazione.

Siti riconosciuti: jeleefstijlalsmedicijn.nl, 2diabeat.nl e altre installazioni WordPress con API aperta.

Riconoscimento: Lo strumento cerca l’endpoint standard /wp-json/wp/v2/ o il link API nell’HTML.

Drupal e popolare presso siti web medici e governativi per la sua struttura robusta. Lo strumento riconosce Drupal dalle classi CSS specifiche ed estrae il contenuto dalla struttura dei campi.

Siti riconosciuti: thuisarts.nl (NHG)

Riconoscimento: Presenza di classi field--name-body e markup specifico di Drupal.

Le soluzioni CMS headless moderne come Storyblok spesso utilizzano SvelteKit come frontend. Lo strumento riconosce i marcatori HTML caratteristici che questi framework utilizzano.

Siti riconosciuti: voedingleeft.nl

Riconoscimento: Blocchi di commento HTML_TAG_START e HTML_TAG_END nel codice sorgente.

Per i siti web che non rientrano nelle categorie precedenti, lo strumento ha strategie di fallback. Queste cercano pattern comuni come tag <article>, classi .prose o div .entry-content.

Ogni articolo migrato riceve automaticamente un’attribuzione della fonte in cima al contenuto. Questa e una citazione con:

  • Fonte: Il nome del sito web con link all’articolo originale
  • Autore: Se disponibile nella pagina di origine

Questo garantisce trasparenza sull’origine del contenuto e rispetta la proprieta intellettuale degli autori originali.

Tutti i collegamenti ipertestuali dall’articolo originale vengono conservati. Questo vale per:

  • Link interni all’interno dell’articolo di origine
  • Link esterni a fonti scientifiche
  • Link ad articoli correlati

I link non vengono modificati o rimossi, in modo che i lettori mantengano l’accesso al contesto completo e alle fonti.

I siti web spesso utilizzano sistemi di formattazione complessi che lasciano “spazzatura” nell’HTML. Lo strumento pulisce automaticamente:

  • Marcatori e classi di stile dei blocchi Kadence
  • Componenti info-box e decorazioni dei link
  • Attributi dei blocchi Gutenberg
  • Attributi target e rel dei link (come target="_blank")
  • Immagini inline codificate in Base64
  • Elementi dell’interfaccia del player video
  • Righe vuote e spazi in eccesso
  • Attributi entity di Drupal
  • Attributi Markdown estesi come {.button .primary} vengono rimossi
  • Questo previene errori di parsing nell’elaborazione MDX di Astro

Lo strumento genera automaticamente il frontmatter obbligatorio per Starlight:

  • title: Preso dal tag <title> o dai metadati Open Graph
  • description: Dalla meta description, o un fallback generato automaticamente

Questo garantisce che gli articoli migrati siano immediatamente compatibili con il nostro sito senza modifiche manuali.

La migrazione di un articolo procede come segue:

  1. Inserire URL - Lo strumento riceve l’URL dell’articolo da migrare
  2. Rilevamento CMS - Riconoscimento automatico della piattaforma
  3. Estrazione contenuto - Recupero del contenuto dell’articolo tramite il miglior metodo disponibile
  4. HTML in Markdown - Conversione tramite Pandoc in Markdown pulito
  5. Pulizia - Rimozione degli artefatti specifici del CMS
  6. Aggiunta frontmatter - Titolo e descrizione dai metadati
  7. Inserimento attribuzione fonte - Attribuzione automatica alla fonte originale
  8. Salvataggio - Output come file .mdx pronto per la base di conoscenza

Oltre alle pagine web, anche i documenti PDF possono essere convertiti in Markdown. Questo e utile per schede, manuali e altri documenti disponibili in PDF.

  • PDF basati su testo (testo direttamente copiabile)
  • PDF con tabelle e liste
  • Pagine multiple
  1. Caricare PDF - Metti il PDF nella cartella Downloads o specifica il percorso
  2. Estrazione contenuto - La skill PDF legge il contenuto testuale
  3. Mantenimento struttura - Titoli, liste e paragrafi vengono riconosciuti
  4. Generazione Markdown - Output in .mdx con frontmatter corretto
  5. Aggiunta info autore - Per le schede viene aggiunta automaticamente l’informazione sull’autore

Dopo la creazione di un nuovo articolo, viene pubblicato tramite Git:

git add → git commit → git push → Online su docs.gezondland.org

Il sito viene automaticamente costruito e deployato dopo ogni push al branch master.

CategoriaCartella
Condizionisrc/content/docs/aandoeningen/
Iniziasrc/content/docs/aan-de-slag/
Alimentazionesrc/content/docs/voeding/
Schede Yvo Sijpkenssrc/content/docs/fiches-yvo-sijpkens/
Classificazionesrc/content/docs/classificatie/

L’URL segue la struttura delle cartelle: docs.gezondland.org/{categoria}/{nome-file}/

Ad esempio: src/content/docs/fiches-yvo-sijpkens/pcos.mdx diventa docs.gezondland.org/fiches-yvo-sijpkens/pcos/

Lo strumento ha alcune limitazioni:

  • Immagini non vengono scaricate automaticamente. Devono essere recuperate separatamente e ospitate localmente.
  • Video incorporati non vengono inclusi. Solo il contenuto testuale viene estratto.
  • Contenuto dinamico caricato tramite JavaScript non e sempre accessibile.
  • Contenuto a pagamento dietro un login non puo essere recuperato.
  • PDF scansionati (immagini di testo) richiedono OCR e non sempre vengono riconosciuti correttamente.

Lo strumento e disponibile come skill di Claude Code e puo essere invocato durante una sessione.

Fornisci l’URL dell’articolo e la categoria desiderata. Lo strumento determina da solo il miglior metodo di estrazione.

Metti il PDF in Downloads e fornisci il nome del file e la categoria di destinazione. Lo strumento legge il PDF e genera un file Markdown.

Per domande sulla migrazione di contenuti specifici o siti web che non vengono riconosciuti correttamente, lo strumento puo essere esteso con nuovi pattern di estrazione.

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.