WMS-kall fra Python¶

Viser hvordan resultater av to WMS-kall kan presenteres uten å lagre i egen fil. Bruk av markdown- og html-kode.

Notebook-fil: wms-2-image-grid.ipynb


NTNU 23.01.2025 Sverre Stikbakke

In [1]:
# Markdown-modulen inneholder md-funksjonen som genererer html-kode fra markdown-kode. Dette gir mulighet for å bruke verdier fra python-variabler i html-koden.
from IPython.display import Markdown as md
In [2]:
service_url = 'https://wms.geonorge.no/skwms1/wms.topo'

bbox_1 = '592000,6741000,652000,6801000'
bbox_2 = '652000,6741000,712000,6801000'

parameters = {
    'VERSION': '1.3.0',
    'REQUEST': 'GetMap',
    'CRS': 'EPSG:25832',
    'BBOX': bbox_1,
    'WIDTH': '600',
    'HEIGHT': '600',
    'LAYERS': 'topo',
    'FORMAT': 'image/png',
    'STYLES': 'default'
}
In [3]:
# Kode som setter sammen verdiene fra service_url, bbox-variablene og parameters til en komplett url
# (det er brukt python list comprehension her sammen med join-funksjonen)

url_1 = service_url + '?' + '&'.join(['='.join(x) for x in parameters.items()])
print(url_1)
https://wms.geonorge.no/skwms1/wms.topo?VERSION=1.3.0&REQUEST=GetMap&CRS=EPSG:25832&BBOX=592000,6741000,652000,6801000&WIDTH=600&HEIGHT=600&LAYERS=topo&FORMAT=image/png&STYLES=default
In [4]:
# bytter ut innholdet i BBOX
parameters['BBOX'] = bbox_2
url_2 = service_url + '?' + '&'.join(['='.join(x) for x in parameters.items()])
print(url_2)
https://wms.geonorge.no/skwms1/wms.topo?VERSION=1.3.0&REQUEST=GetMap&CRS=EPSG:25832&BBOX=652000,6741000,712000,6801000&WIDTH=600&HEIGHT=600&LAYERS=topo&FORMAT=image/png&STYLES=default
In [5]:
md(f"""
<table>
    <tr>
        <td><img src={url_1}></td>
        <td><img src={url_2}></td>
    </tr>
</table>""")
Out[5]:
No description has been provided for this image No description has been provided for this image