Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DataIstatAPI #29

Open
Frisk-12 opened this issue Mar 1, 2025 · 5 comments
Open

DataIstatAPI #29

Frisk-12 opened this issue Mar 1, 2025 · 5 comments

Comments

@Frisk-12
Copy link

Frisk-12 commented Mar 1, 2025

Gentilissimi,

Innanzitutto grazie per la preziosa guida. Ho integrato costruendo una nuova API con Flask e Python che spero semplifichi, almeno in parte, la gestione dei filtri e l'estrazione dei dati.

Per adesso le API sono hostate su Railway, ma utilizzo un free trial, in attesa di una soluzione migliore.

Se volete potete dare un'occhiata alla repository:

https://github.com/Frisk-12/IstatDataAPI

Se vi fa piacere, datemi pure un riscontro o se avete curiosità o domande sarò lieto di sentirci.
Grazie mille,

Andrea

@aborruso
Copy link
Contributor

aborruso commented Mar 2, 2025

Ciao @Frisk-12 che piacere leggere un messaggio come il tuo.
Questo è ormai un "vecchio" repo, ma ci continua a dare grandi soddisfazioni.

Non appena posso, ti do un riscontro!!

@Frisk-12
Copy link
Author

Frisk-12 commented Mar 4, 2025

Ciao @aborruso! Grazie mille per il tuo messaggio.
Per caso c'è qualcosa di più aggiornato?

Purtroppo noto difficoltà con alcune estrazioni (es. dataflow ID: 102_974 e Ref ID: DCSP_SPA)... Ad esempio il link "https://sdmx.istat.it/SDMXWS/rest/data/102_974/A.99.ALL.ALL.ALL.ALL.TOT.TOT..ALL.IT.THLF.ALL.HO.ALL.ALL" che dovrebbe mostrare la struttura delle aziende agricole, divise per struttura aziendale restituisce "Not Found - NoRecordsFound".

In realtà applicando qualsiasi filtro si ottiene comunque quel risultato :) Mentre non applicandone nemmeno uno si ottengono tutte le combinazioni possibili... E' un peccato! Mi puoi suggerire una soluzione o un'alternativa? Se serve mi spiego meglio con esempi concreti.

Grazie mille!
Andrea

@Frisk-12
Copy link
Author

Frisk-12 commented Mar 4, 2025

Ho trovato, forse bisogna passare all'API di Eurostat!

@Frisk-12
Copy link
Author

Frisk-12 commented Mar 4, 2025

Dietrofront... Molti dati su NUTS2 non sono presenti 😄 avresti suggerimenti? Grazie ancora.

@aborruso
Copy link
Contributor

aborruso commented Mar 5, 2025

Ciao @Frisk-12 provo a risponderti.

Se ad esempio esploro la struttura del BES vedo che c'è la dimensione REF_AREA, che usa la la codelist CL_ITTER107.

Se la chiamo via API, posso filtrarla (sotto uso jq) per farmi dare gli item con "etichetta" di tipo regionale.

Qualcosa come

curl -X GET "https://esploradati.istat.it/SDMXWS/rest/codelist/IT1/CL_ITTER107/1.0" \
-H "Accept: application/vnd.sdmx.structure+json;version=2.0.0" | jq '.data.codelists[0].codes[] | select(.id | test("^IT[A-Z0-9]{2}$")) | {id, name}'

mi dà la risposta di sotto. È da ottimizzare, ma non sono tutti i codici NUTS2?

Saluti

{
  "id": "ITCD",
  "name": "Nord"
}
{
  "id": "ITC1",
  "name": "Piemonte"
}
{
  "id": "ITC2",
  "name": "Valle d'Aosta / Vallée d'Aoste"
}
{
  "id": "ITC3",
  "name": "Liguria"
}
{
  "id": "ITC4",
  "name": "Lombardia"
}
{
  "id": "ITDA",
  "name": "Trentino Alto Adige / Südtirol"
}
{
  "id": "ITD1",
  "name": "Provincia Autonoma Bolzano / Bozen"
}
{
  "id": "ITFG",
  "name": "Mezzogiorno"
}
{
  "id": "ITD2",
  "name": "Provincia Autonoma Trento"
}
{
  "id": "ITD3",
  "name": "Veneto"
}
{
  "id": "ITD4",
  "name": "Friuli-Venezia Giulia"
}
{
  "id": "ITD5",
  "name": "Emilia-Romagna"
}
{
  "id": "ITE1",
  "name": "Toscana"
}
{
  "id": "ITNI",
  "name": "da precisare"
}
{
  "id": "ITE2",
  "name": "Umbria"
}
{
  "id": "ITE3",
  "name": "Marche"
}
{
  "id": "ITE4",
  "name": "Lazio"
}
{
  "id": "ITF1",
  "name": "Abruzzo"
}
{
  "id": "ITF2",
  "name": "Molise"
}
{
  "id": "ITF3",
  "name": "Campania"
}
{
  "id": "ITF4",
  "name": "Puglia"
}
{
  "id": "ITF5",
  "name": "Basilicata"
}
{
  "id": "ITF6",
  "name": "Calabria"
}
{
  "id": "ITG1",
  "name": "Sicilia"
}
{
  "id": "ITG2",
  "name": "Sardegna"
}
{
  "id": "ITZZ",
  "name": "Extra-Regio"
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants