Libre office, qualche espressione XPath e un pizzico di Python ci hanno permesso di tradurre 500 file word in un database accessibile e ricercabile online.

Come trasformare automaticamente centinaia di file docx e pubblicarli come pagine web con Plone

Libre office, qualche espressione XPath e un pizzico di Python ci hanno permesso di tradurre 500 file word in un database accessibile e ricercabile online.

Il portale istituzionale di ENEA pubblica la Banca Dati sui servizi avanzati, le tecnologie innovative e le soluzioni tecnologiche frutto del lavoro di ricerca svolto nei laboratori dell'ente. Per ogni tecnologia, servizio o prodotto viene pubblicata una scheda web, gestita tramite Plone.

Il nostro lavoro

L'ente ha richiesto la possibilitá di gestire le schede e le relative classificazioni in totale autonomia, eseguendo l'import automatico delle schede esistenti nella loro documentazione.

Scheda Ateco ENEA

Gestione dei contenuti

Grazie a Plone, costruire un nuovo tipo di contenuto con il suo schema di attributi specifico, assegnargli un template e un workflow di pubblicazione, renderlo ricercabile secondo i criteri richiesti è stato semplice. Questo ci ha permesso di realizzare rapidamente il prototipo, con cui la redazione ha messo a punto le richieste prima di pubblicare la nuova sezione.

La parte più interessante è stata la richiesta di pubblicare la banca dati popolandola con tutti i contenuti già a disposizione dell'ente.

Importazione dei contenuti esistenti

I contenuti di partenza erano circa 500 documenti office formato DOCX, che presentavano un loro template base e una serie di peculiarità relative al tipo di scheda e alla manualità della gestione dei file. 

Scheda Ateco ENEA edit

Per l'importazione abbiamo scelto un approccio diverso rispetto alla lettura diretta dei file word: il primo step dell'import è stato quello di convertire automaticamente ogni scheda in formato HTML.

In questo modo é stato semplice reperire i blocchi principali di testo contenenti le informazioni da importare, potendo sfruttare delle espressioni xpath per individuare tali blocchi.

In un secondo step, i valori effettivi sono stati estrapolati e puliti tramite semplici metodi Python mirati.

Come parte della richiesta, durante l'importazione, ad ogni scheda abbiamo allegato un PDF generato automaticamente a partire dal documento originale.

ENEA usa Plone per molte delle sue esigenze di pubblicazione online, e potrebbe interessarti approfondire il caso della WebTV.

Share this on

Share |

On same topics

Commenti

comments powered by Disqus