Closed pigreco closed 5 years ago
@pigreco tante domande tutte insieme :)
in un formato GIS (GeoJSON, CSV)
Quindi va bene anche un CSV?
@aborruso ho modificato la domanda, sì, da JSON a CSV usando al CLI grazie
Caro @pigreco lo puoi fare in mille modi. Qui ti mostro uno di quelli che uso. Nota bene: il JSON è un formato che può avere una gerarchia molto ricca, è come un db relazionale con più tabelle dentro. Quindi le utility che fanno conversione diretta in CSV, se il JSON non è semplice, vanno in difficoltà.
Per i JSON, se vuoi usare un utlity a riga di comando (utilizzabile in tutti i sistemi operativi) l'utility più usata (per merito) è jq.
Per trasformare
{
"place_id": 120403399,
"licence": "Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright",
"osm_type": "way",
"osm_id": 191532974,
"lat": "38.0052595",
"lon": "12.9971424",
"display_name": "Alcamo, TP, SIC, 91027, Italia",
"address": {
"town": "Alcamo",
"county": "TP",
"state": "SIC",
"postcode": "91027",
"country": "Italia",
"country_code": "it"
},
"boundingbox": [
"37.9874419",
"38.0068403",
"12.9894177",
"13.000404"
]
}
in "38.0052595","12.9971424","Alcamo, TP, SIC, 91027, Italia"
La query jq è .|[.lat,.lon,.display_name]|@csv
.
A riga di comando è
curl -L "http://nominatim.openstreetmap.org/reverse.php?format=json&lat=38&lon=13&addressdetails=1" | \
jq -r '.|[.lat,.lon,.display_name]|@csv'
.
per entrare nel JSON@csv
.Questa è una query semplice. È possibile scendere negli alberi complessi di oggetti e usare e trasformare quello che serve
wow, @aborruso grazie per la veloce e dettagliata risposta.
a breve unirò questa issue con la #38 e realizzerò una ricetta.
snippet by jqplay
Come convertire un JSON che contiene dati GIS (coordinate lat, lon) in CSV
se puo' essere di aiuto, il JSON proviene dalla issue #38