mappyfile
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.
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 dependences Lark (lark-parser), and jsonschema.
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))
Contributors
Julien Enselme @jenselme
Loïc Gasser @loicgasser
Release files for mappyfile 0.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mappyfile-0.5.0.tar.gz | 57.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mappyfile-0.5.0-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 91.5 kB
Release files / mappyfile-0.5.0.tar.gz
| Download URL | mappyfile-0.5.0.tar.gz |
|---|---|
| Size | 57.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
729b6df9204369f924cd72765b86872b479d1830925b7b216a4a2112045ef2eb
|
|
BLAKE2b-256 checksum How to use checksums |
aea4245034175ab9dc83d6652b4e714d24f34af583a64572860a7c5414c630a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / mappyfile-0.5.0-py2.py3-none-any.whl
| Download URL | mappyfile-0.5.0-py2.py3-none-any.whl |
|---|---|
| Size | 33.8 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
418373275f19cf4054f89270c8eb1e6cf24e8324f374bb64f4773b1458b69d9e
|
|
BLAKE2b-256 checksum How to use checksums |
0b22d97351c9e7558b31cb9550a7332fae77ffc476e85d69bda2db492da89fa7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |