mein hier vorgestelltes Package konvertiert Konfigurationsdateien des UMN Mapserver nach JSON oder von JSON in das Mapserver Format. Die Konfigurationsdateien sollen online bearbeitbar werden, und dazu muss ein parsebares Format her. Man benötigt die Python Mapserver Bibliotheken (python-mapscript) zur Funktionalität.
Es existiert eine Dokumentation (hooray for Sphinx


Ein einfaches Beispiel:
Code: Alles auswählen
# coding: utf-8
from __future__ import with_statement
import codecs
import os
import mapscript
from msjson import Map
try:
import json
except ImportError:
import simplejson as json
def main():
ms = mapscript.mapObj('/mnt/e033/mapconf/PNDO/pndo.map')
m = Map(mapscript_=ms)
m.mapfile_encoding = 'cp1252'
with codecs.open('map.json', 'w', encoding='utf-8') as output:
json.dump(m.to_json(), output, indent=4)
with codecs.open('map.json', 'r', encoding='utf-8') as input_:
foo = json.load(input_)
m.mapscript.save(os.path.join(os.path.dirname(__file__), 'foo.map'))
if __name__ == '__main__':
main()
Das Package ist noch nicht zu 100% vollständig, es fehlen noch einige Parameter der Mapserver Konfiguration, doch es sollte bereits mehr als eine Richtung des Möglichen vorgeben.
Projekt auf Bitbucket
Dokumentation
Im Besonderen möchte ich noch Lunar für seine Github Projekte danken, da ich dort prima Anregungen in Bezug auf Docstrings, rst, Sphinx und viele andere Dinge fand, die zur Projektpublikation unerlässlich sind - auch wenn das wahrscheinlich nicht seine Intention war. Trotzdem danke dafür!