Skip to main content

A pure Python MapFile parser for working with MapServer

Project description

Version Build Status Docs

A pure Python MapFile parser for working with MapServer, built using Lark

An online formatter demonstrating the libraries capabilities can be found at: http://mappyfile.geographika.net/

A presentation on mappyfile was given at FOSS4G Europe 2017 - slides are available for download here.

https://raw.githubusercontent.com/geographika/mappyfile/master/docs/images/class_parsed_small.png

Requirements

  • Python 2.7 or Python 3.x

Installation

mappyfile is available on PyPI (Python Package Index), and can be installed using pip:

pip install mappyfile

This will also install its required dependency Lark.

Documentation

Documentation at http://mappyfile.readthedocs.io/en/latest/

Usage

import mappyfile

mapfile = mappyfile.load("./docs/examples/raster.map")

# update the map name
mapfile["name"] = "MyNewMap"

new_layer_string = """
LAYER
    NAME 'land'
    TYPE POLYGON
    DATA '../data/vector/naturalearth/ne_110m_land'
    CLASS
        STYLE
            COLOR 107 208 107
            OUTLINECOLOR 2 2 2
            WIDTH 1
        END
    END
END
"""

new_layer = mappyfile.loads(new_layer_string)
layers.insert(0, new_layer) # can insert the new layer at any index

print(mappyfile.dumps(mapfile))

Authors

Contributors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mappyfile-0.4.1.tar.gz (47.3 kB view details)

Uploaded Source

Built Distribution

mappyfile-0.4.1-py2.py3-none-any.whl (21.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file mappyfile-0.4.1.tar.gz.

File metadata

  • Download URL: mappyfile-0.4.1.tar.gz
  • Upload date:
  • Size: 47.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for mappyfile-0.4.1.tar.gz
Algorithm Hash digest
SHA256 32917e6b68f42c715bf358604ebc685f68f72c7af96bbf13916c37818007b826
MD5 04e780040e92348ab15cf88240b1dafb
BLAKE2b-256 20636aa0ebaf15e48c18dd0130a5297a166e0bb5b3e3457dee25aa3cc73bb3f4

See more details on using hashes here.

File details

Details for the file mappyfile-0.4.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for mappyfile-0.4.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d3d7b4276ef694f8ccac144e271d7f3d11b91f4a0e850589958d49b886fb2e63
MD5 7cbf80c1bf55a500a34b28115a17e5a9
BLAKE2b-256 84f5d80cc129d3eb01456705d342d1f0630ca186f8ed6b0bbb4d741710abfaad

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page