/confini-amministrativi-istat

Una collezione di applicazioni e risorse per facilitare il riuso dei dati sui confini amministrativi italiani.

Primary LanguagePythonOtherNOASSERTION

Confini Amministrativi ISTAT

Data and open data on forum.italia.it Confini Amministrativi ISTAT on forum.italia.it

Collezione di utilities per facilitare il riuso dei dati ISTAT e ANPR sui confini amministrativi italiani. Per approfondimenti e discussione è aperto un thread dedicato su Forum Italia.

Work in progress, al momento l'output completo è pubblicato in versione di prova su dev.ondata.it/confini-amministrativi-istat/v1.

Contenuto del repository

Nel file sources.json ci sono i link a tutti gli shapefile rilasciati da ISTAT dal 2001 elencati in questa tabella e il link all'archivio dei comuni di ANPR.

Lo script main.py scarica gli archivi zip dal sito ISTAT, li decomprime e li elabora in cartelle nominate con la data di rilascio: v1/YYYYMMDD/. Scarica anche il file di ANPR e lo arricchisce con i dati ISTAT contenuti negli shapefile.

Al momento sono supportati i seguenti formati di output:

Il file di ANPR è quello originale arricchito delle denominazioni e dell'indicazione degli shapefile in cui i comuni sono presenti.

Avvertenza: al momento è inserita nel repository solo la cartella di output risultante dall'esecuzione dell'applicazione relativa al file ISTAT più recente.

Come eseguire l'applicazione

Si consiglia caldamente di usare la versione dockerizzata.

Avvertenza: al momento la conversione in geobuf è commentata perché va in errore

Versione dockerizzata

Modalità consigliata

Clona questo repository con Git: git clone https://github.com/teamdigitale/confini-amministrativi-istat.git. Entra nella cartella appena creata: cd confini-amministrativi-istat/.

Effettua la build delle immagini: docker build -t ondata-conf-amm-istat . (puoi usare lo script pipenv run build).

Esegui il container per ogni tipologia di confine amministrativo e per tutte le versioni (docker run -v $PWD:/app ondata-conf-amm-istat:latest) oppure indicando la singola versione di interesse: docker run -e SOURCE_NAME=YYYYMMDD -v $PWD:/app ondata-conf-amm-istat:latest. Puoi usare l'utility bash generate.sh [YYYYMMDD].

Avvertenza: l'esecuzione può richiedere diversi minuti, o anche ore nel caso dell'elaborazione di tutte le versioni.

Esecuzione diretta

Modalità altamente sconsigliata, le dipendenze indirette sono molte e si reggono su un equilibrio precario tra le versioni di ogni libreria.

Clona questo repository con Git: git clone https://github.com/teamdigitale/confini-amministrativi-istat.git. Entra nella cartella appena creata: cd confini-amministrativi-istat/.

Il file requirements.txt elenca tutte le dipendenze necessarie a eseguire l'applicazione. Si consiglia di operare sempre in un ambiente isolato creando un apposito virtual environment. Con pipenv è sufficiente entrare nel virtualenv con pipenv shell e la prima volta installare le dipendenze con pipenv install.

E' necessario avere installato nel sistema (al di fuori dell'ambiente python) sqlite3, l'estensione spatialite ed averla attivata come riportato qui: https://www.cafe-encounter.net/p3244/installing-and-using-sqlite-extensions-on-macos-and-maybe-windows-linux-too

Infine, per eseguire l'applicazione ed elaborare tutte le versioni: python main.py. Per specificare una singola versione di interesse: SOURCE_NAME=YYYYMMDD python main.py.

Come contribuire

Ogni contributo è benvenuto, puoi aprire una issue oppure proporre una pull request, così come partecipare alla discussione su Forum Italia.

Ringraziamenti

Ringraziamo il Team per la Trasformazione Digitale per aver ospitato questo progetto nella sua primissima fase di ideazione e realizzazione. Un ringraziamento anche a Datafactor Agrigento per il supporto e il prezioso contributo di finalizzazione del file di configurazione sources.json.

Licenza

L'uso di questo software è concesso sotto licenza GNU Affero General Public License.