class, layers, getmap_extra_kwargs=None)[source]

A WMS imagery retriever which can be added to a map.


Requires owslib and Pillow to work.

No caching of retrieved maps is done with this WMSRasterSource.

To reduce load on the WMS server it is encouraged to tile map requests and subsequently stitch them together to recreate a single raster, thus allowing for a more aggressive caching scheme, but this WMSRasterSource does not currently implement WMS tile fetching.

Whilst not the same service, there is also a WMTSRasterSource which makes use of tiles and comes with built-in caching for fast repeated map retrievals.

__init__(service, layers, getmap_extra_kwargs=None)[source]
  • service (string or WebMapService instance) – The WebMapService instance, or URL of a WMS service, from whence to retrieve the image.

  • layers (string or list of strings) – The name(s) of layers to use from the WMS service.

  • getmap_extra_kwargs (dict, optional) – Extra keywords to pass through to the service’s getmap method. If None, a dictionary with {'transparent': True} will be defined.


__init__(service, layers[, getmap_extra_kwargs])

param service

The WebMapService instance, or URL of a WMS service,

fetch_raster(projection, extent, ...)

Return a sequence of images with extents given some constraining information.


Raise an error if this raster source cannot provide images in the specified projection.



The OWSLib WebMapService instance.


The names of the layers to fetch.


Extra kwargs passed through to the service's getmap request.