28 luglio, 2014 | di in » Dati

L’Osservatorio Carburanti, introdotto con una legge del 2009 (art. 51, legge 99/2009), vuole essere uno strumento di trasparenza e garanzia della concorrenza tutelato e gestito dal Ministero dello Sviluppo Economico. Dal 2013 é obbligatorio per tutti i distributori sul territorio italiano comunicare e tenere aggiornati i prezzi praticati sul portale ministeriale (https://carburanti.mise.gov.it/OssPrezziSearch/): il decreto ministeriale del 15 Ottobre 2010 prescrive l’obbligo di comunicare il prezzo iniziale, il ritocco dei prezzi al rialzo e comunque un aggiornamento ogni 8 giorni dall’ultima comunicazione, e suggerisce una serie di dati da trasmettere su base volontaria. Le sanzioni previste dalla legge, convertite in euro, variano tra 516 e 3098 euro.

La comunicazione al Ministero avviene in tre modi:

  • tramite portale web
  • tramite sistemi convenzionati (gestiti dai concessionari autostradali o da imprese accreditate)
  • tramite gestionali conformi alle specifiche ministeriali

Lato consumatore si dovrebbero aprire enormi possibilità per il monitoraggio dell’andamento dei prezzi e quindi del rispetto della concorrenza, poiché diventa sufficiente avere accesso alla rete per poter avere informazioni puntuali sui prezzi praticati dalle stazioni di rifornimento. Il mercato è attualmente composto dal portale ministeriale e dalle applicazioni create dalle imprese accreditate: il ministero tramite Infocamere contribuisce con OsservaPrezzi, una sorta di applicazione demo che mostra il potenziale di questo dataset  (2.6 valutazione media sul Play Store), mentre tra le varie proposte permane ancora la storica PrezziBenzina (4.4 valutazione media sul Play Store).

La domanda che ci siamo posti quando abbiamo iniziato l’analisi del portale è la seguente: se il database dei prezzi è nato a garanzia di trasparenza e concorrenza, perché la piattaforma non prevede ancora il rispetto dei criteri stabiliti ad esempio dall’Agenda Digitale italiana? Possiamo fare qualcosa per contribuire al suo miglioramento?

La prima azione compiuta è stata l’analisi di come funziona dietro le quinte il portale del MiSE: con sommo piacere questo è costruito con tecnologie web al passo coi tempi ed il frontend (il “lato utente”) utilizza il framework Bootstrap. Questo teoricamente potrebbe garantire la navigabilità da piattaforme mobili, ma evidentemente si è lasciato che l’utente trovasse necessario l’utilizzo delle app.
L’API che fa dialogare la parte utente con il server è stata esplorata facilmente, permettendo perfino di documentarla parzialmente: l’unica azione per rendere il servizio disponibile in chiaro alla comunità sarebbe documentare le modalità di interrogazione e fornire l’accesso tramite chiavi agli sviluppatori interessati.

L’azione successiva si è svolta su due fronti: il primo è stato provare a fornire servizi utente facilmente fruibili, mentre il secondo è stato ricavare un dump completo del database in un dato momento per permetterne l’analisi a mo’ di big data.

Se l’API fosse ufficiale sarebbe utile che fornisse anche metodi per utilizzare i dati direttamente via JavaScript (JSONP) ma, purtroppo, ciò non è possibile al momento: si è reso necessario creare un ‘proxy’ fra i nostri esperimenti ed il servizio trasformando le nostre richieste da GET a POST via PHP, superando contemporaneamente le limitazioni di sicurezza che i nostri browser mettono in atto nei confronti delle richieste a domini diversi (cross-domain).
L’endpoint position, ad esempio, permette di ottenere tutti i distributori nell’intorno di un dato punto per un raggio di 10 chilometri: l’applicazione contenuta nella pagina distributori.html permette di consultare su mappa tutti i distributori intorno alla posizione scelta dall’utente (via doppio clic o tramite geolocalizzazione), mentre quella della pagina cheap.html evidenzia il distributore più conveniente nella stessa area.

TrovaPrezzi Benzina

Il dump ottenuto tramite simulazione delle richieste all’API copre tutti i distributori disponibili e viene trasformato in automatico dalla risposta JSON ad un database costituito di due parti: una tabella raccoglie la descrizione del distributore (marca, posizione, indirizzo,…), mentre l’altra raccoglie i prezzi di ognuno di essi. Le due tabelle sono legate tra loro da un identificatore trovato all’interno della risposta (il quale andrebbe a sua volta standardizzato e reso ufficiale per permettere incroci con altre basi di dati). Questo database è reso disponibile sia come file SQLITE sia come file SPATIALITE: quest’ultimo viene anche purificato dei distributori con coordinate non valide e può essere utilizzato per analisi spaziali con Qgis.

Noi continueremo ad estrarre informazione e valutarla per mostrare cosa può significare la disponibilità aperta dei dati: più persone ci saranno a consultare ed utilizzare i dati dell’Osservatorio, maggiore trasparenza ci sarà nella gestione e nel monitoraggio del mercato dei carburanti. I segnali che provengono ci fanno credere di stare seguendo una strada giusta e con pochi accorgimenti in una fase futura di apertura tutti ne potranno trarre beneficio.

Il repository GitHub è localizzato all’indirizzo https://github.com/sabas/carburantiMiSE; l’istanza corrispondente, dalla quale scaricare anche i dump più recenti, è all’indirizzo http://toolserver.openstreetmap.it/carburantiMiSE/

Attenzione! Questo è un articolo di almeno un anno fa!
I contenuti potrebbero non essere più adeguati ai tempi!
  1. 2 Trackback(s)

  2. lug 6, 2015: Riuso di dati aperti: prezzi dei carburanti | Osservatorio di Open Genova
  3. apr 2, 2016: Riuso di dati aperti: prezzi dei carburanti – Open Genova

Lascia un commento

Tag html consentiti: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


7 × 4 =


TANTO non rappresenta una testata giornalistica ai sensi della legge n. 62 del 7.03.2001, in quanto non viene aggiornato con una precisa e determinata periodicita'. Pertanto, in alcun modo puo' considerarsi un prodotto editoriale.