[Gfoss] elenco layer contenuti in WMS

Ciao a tutti.
Sapete come fare per estrarre (con Qgis) da un indirizzo WMS l'elenco (e
relativa descrizione) dei Layer consultabili, in modo da poterli esportare
ad esempio in un foglio elettronico (per semplicità di ricerca tematismi)?
Ad esempio, per la regione sardegna, il WMS dei dati vettoriali
http://webgis.regione.sardegna.it/geoserver/ows?service=WMS&request=GetCapabilities
contiene diversi livelli e ricercare ogni volta quello che mi serve non è
un'operazione proprio immediata.

Grazie e buona giornata

--
View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/elenco-layer-contenuti-in-WMS-tp7586555.html
Sent from the Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.

Se non ti serve necessariamente un file excel, una soluzione alternativa è la seguente.

Una trasformazione XSLT.
La xslt non necessariamente deve essere appoggiata su una webapp, puoi farla risolvere anche da un browser e quindi lato client.
Tutti i browsers recenti la supportano. Firefox ad esempio.

Questa nostra pagina è generata da una trasformazione xslt ad esempio

http://www502.regione.toscana.it/geoscopio/servizi/wfs/html/comuni.html

Se vuoi vedere un esempio di trasformazione xslt lato client.

fai riferimento a questo link:

http://www502.regione.toscana.it/geoscopio/servizi/wfs/html/elenco_fiumi.html?com=052001

questa è una pagina html che tramite browser, in javascript, invoca un server wfs e si fa' mandare una lista di risultati che riceve in xml,
poi recupera dal server una trasformazione xslt e con essa produce al volo la pagina html che appunto vedi.

E lavora tutto lato client.
Sul server ci sta solo il server wfs. Nel tuo caso sarebbe il server wms che risponde alla get-capabilities.

Ma ci sono anche dei programmini da linea di comando (xsltproc ad esempio) che svolgono il lavoro del browser e quindi recuperano l'xml, recuperano l'xslt (che puo' essere anche locale su filesystem) e producono il risultato.

Naturalmente scrivere la trasformazione xslt non è banalissimo, le prime volte resta un po' ostica perche' ha un paradigma completamente differente dagli usuali programmi.
E quindi capisco che se non si ha determinati skill puo' risultare indigesta.

In tal caso sicuramente una strada alternativa è scrivere un plugin per QGIS che faccia il medesimo lavoro.

Magari un plugin furbo, che usi una trasformazione xslt per capire cosa deve fare, cosicche' uno gli cambia la trasformazione xslt e lui produce il nuovo risultato.

Saluti,

Andrea.

On 07/02/2014 12:05, Rossella wrote:

Ciao a tutti.
Sapete come fare per estrarre (con Qgis) da un indirizzo WMS l'elenco (e
relativa descrizione) dei Layer consultabili, in modo da poterli esportare
ad esempio in un foglio elettronico (per semplicità di ricerca tematismi)?
Ad esempio, per la regione sardegna, il WMS dei dati vettoriali
http://webgis.regione.sardegna.it/geoserver/ows?service=WMS&request=GetCapabilities
contiene diversi livelli e ricercare ogni volta quello che mi serve non è
un'operazione proprio immediata.

Grazie e buona giornata

--
View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/elenco-layer-contenuti-in-WMS-tp7586555.html
Sent from the Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666 iscritti al 22.7.2013

sai che non ho capito la domanda?.. vuoi fare il parsing della getCapability o di una specifica chiamata WMS? o altro ancora?

···

2014-02-07 Rossella <dbrossella@gmail.com>:

Ciao a tutti.
Sapete come fare per estrarre (con Qgis) da un indirizzo WMS l’elenco (e
relativa descrizione) dei Layer consultabili, in modo da poterli esportare
ad esempio in un foglio elettronico (per semplicità di ricerca tematismi)?
Ad esempio, per la regione sardegna, il WMS dei dati vettoriali
http://webgis.regione.sardegna.it/geoserver/ows?service=WMS&request=GetCapabilities
contiene diversi livelli e ricercare ogni volta quello che mi serve non è
un’operazione proprio immediata.

Grazie e buona giornata


View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/elenco-layer-contenuti-in-WMS-tp7586555.html
Sent from the Gfoss – Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.


Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
666 iscritti al 22.7.2013

Il 07/02/2014 13:23, Gino Pirelli ha scritto:

sai che non ho capito la domanda?... vuoi fare il parsing della
getCapability o di una specifica chiamata WMS? o altro ancora?

salve.
non e' che stiamo cercando di reinventare il CSW?
saluti.

--
Paolo Cavallini - www.faunalia.eu
QGIS & PostGIS courses: http://www.faunalia.eu/training.html

@Gino: Rossella vorrebbe un metodo per potersi salvare l’elenco dei layer esposti da un WMS.

Un altro metodo è prendersi l’output di gdalinfo:

gdalinfo “http://webgis.regione.sardegna.it/geoserver/ows?service=WMS&request=GetCapabilities” > capacilities.txt

Nel file di output troverai l’elenco dei layer sotto il nome di SUBDATASETS

Aggiungo alla risposta di Andrea il file di trasformazione (XSL) citato nell’esempio: http://www502.regione.toscana.it/geoscopio/servizi/wfs/xslt/WFS_TinyOWS_GetFeature_with_XSLT_ListaFiumi_Comune.xsl

giovanni

···

Il giorno 07 febbraio 2014 13:23, Gino Pirelli <luipir@gmail.com> ha scritto:

sai che non ho capito la domanda?.. vuoi fare il parsing della getCapability o di una specifica chiamata WMS? o altro ancora?


Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
666 iscritti al 22.7.2013

Giovanni Allegri
http://about.me/giovanniallegri
Twitter: https://twitter.com/giohappy
blog: http://blog.spaziogis.it
GEO+ geomatica in Italia http://bit.ly/GEOplus

2014-02-07 Rossella <dbrossella@gmail.com>:

Ciao a tutti.
Sapete come fare per estrarre (con Qgis) da un indirizzo WMS l’elenco (e
relativa descrizione) dei Layer consultabili, in modo da poterli esportare
ad esempio in un foglio elettronico (per semplicità di ricerca tematismi)?
Ad esempio, per la regione sardegna, il WMS dei dati vettoriali
http://webgis.regione.sardegna.it/geoserver/ows?service=WMS&request=GetCapabilities
contiene diversi livelli e ricercare ogni volta quello che mi serve non è
un’operazione proprio immediata.

Grazie e buona giornata


View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/elenco-layer-contenuti-in-WMS-tp7586555.html
Sent from the Gfoss – Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.


Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
666 iscritti al 22.7.2013

No,
il CSW è allo stesso livello del WMS .
L’esigenza di Rossella è a un livello superiore.

Infatti, l risposta di un csw è un file XML esattamente come lo è quella del WMS.
Per cui se passi dal CSW poi la domanda diverrebbe:

come faccio a estrarre dalla risposta CSW i due o tre campi che a me interessano ?

Ovviamente, noi anche nel caso del CSW operiamo tramite una trasformazione xslt.
Ovvero si fa’ la chiamata al CSW con la ricerca che si vuole avere.

SI prende i risultati che sono in XML e si macinano in una trasf. xslt che tradurra’ in un formato intelleggibile (html nel nostro caso).

E’ anche il pricnipio con cui lavora GeoNetwork.

Una massa immensa di trasformazioni xslt ognuna delle quali fa’ qualcosa di specifico sul medesimo grumo di schede xml.

A.

···

Il giorno 07 febbraio 2014 13:38, Paolo Cavallini <cavallini@faunalia.it> ha scritto:

Il 07/02/2014 13:23, Gino Pirelli ha scritto:

sai che non ho capito la domanda?.. vuoi fare il parsing della
getCapability o di una specifica chiamata WMS? o altro ancora?

salve.
non e’ che stiamo cercando di reinventare il CSW?
saluti.


Paolo Cavallini - www.faunalia.eu
QGIS & PostGIS courses: http://www.faunalia.eu/training.html


Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
666 iscritti al 22.7.2013

Andrea Peri
. . . . . . . . .
qwerty àèìòù

Grazie per le risposte! :smiley:

Premesso che le mie conoscenze di programmazione informatica sono ferme ai
tempi del liceo con TurboPascal, molti dei termini e degli acronimi da voi
utilizzati mi sono sconosciuti e costituiscono il pretesto per nuovi studi e
ricerche.
Ho dato un'occhiata a un pò di guide sul web per capire come funziona
l'architettura del linguaggio di programmazione, sperando che siano una
buona base di partenza, e poi chi lo sa, potrei anche arrivare a scrivere un
plugin furbo! un passo per volta :slight_smile:

Più veloce l'ipotesi alternativa di gdalinfo suggerita da Giovanni, ma non
ho capito come esportare i risultati di output in un file *.txt. Facendo un
banalissimo 'copia tutto' sul risultato di gdalinfo (per poi incollare da
qualche parte), riporta il seguente errore:

/Errore durante l'esecuzione di codice Python:

Traceback (most recent call last):
  File
"C:/PROGRA~2/QGISDU~1/apps/qgis/./python/plugins\GdalTools\tools\doInfo.py",
line 81, in doCopyAll
    output.append( self.rasterInfoList.item( r ).text() + "\n" )
AttributeError: 'str' object has no attribute 'append'

Versione Python:
2.7.4 (default, Apr 6 2013, 19:54:46) [MSC v.1500 32 bit (Intel)]

Versione di QGIS:
2.0.1-Dufour Dufour, ebebdf3

Percorso Python:
['C:/PROGRA~2/QGISDU~1/apps/qgis/./python/plugins\\processing',
'C:/PROGRA~2/QGISDU~1/apps/qgis/./python', 'C:\\Users\\Rox/.qgis2/python',
'C:\\Users\\Rox/.qgis2/python/plugins',
'C:/PROGRA~2/QGISDU~1/apps/qgis/./python/plugins',
'C:\\PROGRA~2\\QGISDU~1\\bin\\python27.zip',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\DLLs',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib\\plat-win',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib\\lib-tk',
'C:\\PROGRA~2\\QGISDU~1\\bin', 'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib\\site-packages',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib\\site-packages\\PIL',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib\\site-packages\\win32',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib\\site-packages\\win32\\lib',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib\\site-packages\\Pythonwin',
'C:\\PROGRA~2\\QGISDU~1\\apps\\Python27\\lib\\site-packages\\wx-2.8-msw-unicode',
'C:\\PROGRA~2\\QGISDU~1\\apps\\qgis\\python\\plugins\\fTools\\tools']/

@Gino: quoto in toto Giovanni!

Detto ciò, sulla base di quanto detto da Andrea e Giovanni, comincio a
studiare, sono sempre bene accetti i consigli e le segnalazioni di
guide/manuali

Grazie, Rossella

--
View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/elenco-layer-contenuti-in-WMS-tp7586555p7586576.html
Sent from the Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.

In questo momento non ho modo di testare l’errore che riporti, comunque è più semplice se apri una shell (linea di comando) e ci incolli la riga che ti ho scritto.
Se sei su Windows e hai installato QGIS dal setup normale, trovi la shell nel menu start di Windows, dentro il menù di QGIS.
Se hai installato tramite Osgeo4w, la shell si apre tramite Osgeo4w.bat, anch’esso nello start di Windows.
Se sei su Linux basta aprire un terminale.

Il comando gdalinfo funziona indipendentemente da QGIS.

L’output viene scritto nel file che nel comando è indicato dopo il carattere “>”.

Buona serata,
Giovanni

Il 07/feb/2014 20:08 “Rossella” <dbrossella@gmail.com> ha scritto:

Grazie per le risposte! :smiley:

Premesso che le mie conoscenze di programmazione informatica sono ferme ai
tempi del liceo con TurboPascal, molti dei termini e degli acronimi da voi
utilizzati mi sono sconosciuti e costituiscono il pretesto per nuovi studi e
ricerche.
Ho dato un’occhiata a un pò di guide sul web per capire come funziona
l’architettura del linguaggio di programmazione, sperando che siano una
buona base di partenza, e poi chi lo sa, potrei anche arrivare a scrivere un
plugin furbo! un passo per volta :slight_smile:

Più veloce l’ipotesi alternativa di gdalinfo suggerita da Giovanni, ma non
ho capito come esportare i risultati di output in un file *.txt. Facendo un
banalissimo ‘copia tutto’ sul risultato di gdalinfo (per poi incollare da
qualche parte), riporta il seguente errore:

/Errore durante l’esecuzione di codice Python:

Traceback (most recent call last):
File
“C:/PROGRA~2/QGISDU~1/apps/qgis/./python/plugins\GdalTools\tools\doInfo.py”,
line 81, in doCopyAll
output.append( self.rasterInfoList.item( r ).text() + “\n” )
AttributeError: ‘str’ object has no attribute ‘append’

Versione Python:
2.7.4 (default, Apr 6 2013, 19:54:46) [MSC v.1500 32 bit (Intel)]

Versione di QGIS:
2.0.1-Dufour Dufour, ebebdf3

Percorso Python:
[‘C:/PROGRA~2/QGISDU~1/apps/qgis/./python/plugins\processing’,
‘C:/PROGRA~2/QGISDU~1/apps/qgis/./python’, ‘C:\Users\Rox/.qgis2/python’,
‘C:\Users\Rox/.qgis2/python/plugins’,
‘C:/PROGRA~2/QGISDU~1/apps/qgis/./python/plugins’,
‘C:\PROGRA~2\QGISDU~1\bin\python27.zip’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\DLLs’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib\plat-win’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib\lib-tk’,
‘C:\PROGRA~2\QGISDU~1\bin’, ‘C:\PROGRA~2\QGISDU~1\apps\Python27’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib\site-packages’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib\site-packages\PIL’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib\site-packages\win32’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib\site-packages\win32\lib’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib\site-packages\Pythonwin’,
‘C:\PROGRA~2\QGISDU~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode’,
‘C:\PROGRA~2\QGISDU~1\apps\qgis\python\plugins\fTools\tools’]/

@Gino: quoto in toto Giovanni!

Detto ciò, sulla base di quanto detto da Andrea e Giovanni, comincio a
studiare, sono sempre bene accetti i consigli e le segnalazioni di
guide/manuali

Grazie, Rossella


View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/elenco-layer-contenuti-in-WMS-tp7586555p7586576.html
Sent from the Gfoss – Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.


Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
666 iscritti al 22.7.2013

Funziona!
grazie mille, ho il file completo :smiley:

Buona serata anche a te

--
View this message in context: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/elenco-layer-contenuti-in-WMS-tp7586555p7586578.html
Sent from the Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive at Nabble.com.