WMS CATASTO ADE: ESTRARRE I DATI CON IL FIELD CALC DI QGIS

Il 24 settembre 2020 è una data storica e rimarrà impressa nella mente di molte persone in quanto le mappe catastali, usufruibili tramite servizio WMS del AdE, diventano utilizzabili grazie alla modifica della licenza da  CC BY-NC-ND 4.0 a CC BY 4.0.

Per scaricare i dati dal WMS esistono vari metodi ma, in questo blog post, descriverò solo quello utilizzabile in QGIS, la logica è presa in prestito dal blog post di Andrea Borruso (grazie mille):

QGIS

Metodo GetFeatureInfo e output in HTML:

Funzione personalizzata da usare nel Calcolatore di campi di QGIS:

# -*- coding: utf-8 -*-
"""
/***************************************************************************
WMS Catasto Agenzia delle Entrate CC BY 4.0
——————-
copyright : (C) 2020 by Giulio Fattori
email : giulio.fattori@tin.it
***************************************************************************/
"""
from qgis.core import *
from qgis.gui import *
import requests
@qgsfunction(args='auto', group='Custom')
def get_parcel_info2(xx, yy, EPSG, feature, parent):
"""
<h1>WMS Catasto Agenzia delle Entrate CC BY 4.0:</h1><br>
La funzione, tramite una richiesta GetFeatureInfo, restituisce le informazioni utili sulla particella che ricade sotto il pixel di mio interesse:
<h2>Esempio:</h2>
<ul>
<li>get_parcel_info(355461.5,4222490.7,'EPSG:3045') -> 'IT.AGE.PLA.G273_0033A0.673'</li>
<li>get_parcel_info("fieldX", "fieldY",'EPSG:3045') -> 'IT.AGE.PLA.G273_0033A0.673'</li>
<li>get_parcel_info("fieldX", "fieldY",@project_crs) -> 'IT.AGE.PLA.G273_0033A0.673'</li>
</ul>
<h2>NB: le coordinate X e Y devono essere espresse nel EPSG utilizzato (gli EPSG disponibili sono:6706,4258,25832/3/4,3044/5/6)</h2>
"""
req = "https://wms.cartografia.agenziaentrate.gov.it/inspire/wms/ows01.php?REQUEST=GetFeatureInfo&SERVICE=WMS&SRS=&quot;+EPSG+"&STYLES=&VERSION=1.1&FORMAT=image/png&BBOX="+str(xx1)+","+str(yy1)+","+str(xx+1)+","+str(yy+1)+"&HEIGHT=9&WIDTH=9&LAYERS=CP.CadastralParcel&QUERY_LAYERS=CP.CadastralParcel&INFO_FORMAT=text/html&X=5&Y=5"
r = requests.get(req, auth=('user', 'pass'))
a = r.text.partition("InspireId localId</th><td>")[2]
b = a.partition("</td>")[0]
return b
view raw WMS_catasto.py hosted with ❤ by GitHub

il file zippato è scaricabile cliccando qui.

Dove mettere il file

Scaricare lo script WMS_catasto.py e metterlo nella seguente cartella:

Per Windows:
C:\Users\nomeUtente\AppData\Roaming\QGIS\QGIS3\profiles\default\python\expressions

Per OSX:
/Users/[NAME USER]/Library/Application Support/QGIS/QGIS3/profiles/default/python/expressions

al riavvio di QGIS, trovate la funzione nel calcolatore di campi di QGIS nel gruppo Custom:

Come usare la funzione personalizzata

La funzione è get_parcel_info(), come da esempio nella guida in linea, richiede due argomenti (le coordinate X e Y) ovvero è possibile dargli in pasto due campi che contengono le coordinate X e Y.

In questo video è spiegato tutto: nella InfoBox trovate i marcatori di capitolo:


NOTE FINALI: Per favore non abusare di questo servizio, con questo metodo descritto sopra potrai mandare in tilt i server dell AdE e rischiare di far chiudere il servizio.

Un ringraziamento particolare ad Andrea Borruso, che ha pensato, realizzato e condiviso questi metodi.

Nel gist trovate le espressioni utilizzate per i campi virtuali.


RINGRAZIAMENTI

RIFERIMENTI


Se il blog post vi è piaciuto cliccate su ‘Mi piace’, grazie!!!
if you liked the blog post click on ‘Like’, thank you !!!

SE IL POST VI È STATO UTILE CONTRIBUITE A MANTENERLO AGGIORNATO PAYPAL


9 pensieri su “WMS CATASTO ADE: ESTRARRE I DATI CON IL FIELD CALC DI QGIS

  1. Provato…funziona perfettamente….grazie
    Una domanda: come si potrebbe modificare la procedura per estrarre dati di un gruppo di particella senza doverle cliccare una ad una??

    Piace a 1 persona

  2. Grazie delle informazioni chiare e puntuali che ci concedi…
    Ho provato la funzione sopra indicata, ed opera egregiamente…DOMANDA: sarebbe possibile ottimizzare la funzione per un estrazione del dato catastale su un ingombro poligonale o lineare?

    "Mi piace"

  3. Ciao Totò,
    se abbiamo ad esempio l’ingombro di una strada di 3 mt di larghezza e mt 100 di lunghezza che attraversa una serie di particelle, sarebbe possibile estrarre le informazioni dal wms catastale relativamente alle particelle intersecate dal tracciato? non avremmo più quindi dei punti con delle coordinate x-y ma uno shape poligonale o lineare georeferenziato.
    pensavo ad una possibile applicazione per le procedure di esproprio ricavando i dati foglio e particella dal wms catastale incrociandoli con i dati .ter ecc. dell’agenzia delle entrate automatizzando in questo modo la ricerca delle proprietà, tipologia della coltura etc.

    (ps. attualmente procedo con la rototraslazione dei fogli .cxf convertendoli poi in shape ed intersecandoli con un eventuale tracciato, ma non sempre i fogli .cxf sono disponibili o aggiornati)

    Piace a 1 persona

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.