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


3 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

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.