Server:
Sie benötigen ein Framework auf der Serverseite, es gibt gute Python-Optionen: Django, Flask, Bottle, Webpy. Dieses Framework empfängt einen (Ajax-) Anforderungsprozess des GeoJson und gibt die Zeichenfolge zurück.
Nachdem die Informationen in das Framework eingegeben wurden, sind Sie jetzt "pythonisch" und können das von Ihnen bevorzugte Tool zum Lesen und Arbeiten mit GeoJSON verwenden, z. B. Shapely- oder Osgeo OGR-Python-Bindungen . Wenn Sie sich für Django entscheiden, wird es bereits mit seinen Geometrie-Helfern geliefert - GeoDjango .
Client:
Auf der Client-Seite benötigen Sie etwas, um die Schritte zum Erstellen der Anfrage, zum Empfangen der Antwort und zum Anzeigen der Infobox zu vereinfachen. Dafür können Sie Frameworks / Tools wie ExtJS , Jquery (UI) , Dojo , KendoUI verwenden
Persönlich verwende ich eine Kombination aus Django + ExtJS, um so etwas zu erreichen. Es ist eine schwere Lastkombination, ich meine, sie hat weit mehr Ressourcen als Sie brauchen. Aber es ist so einfach zu bedienen und so gut dokumentiert, dass ich keine andere Sache empfehlen würde, um loszulegen. Nachdem Sie das grundlegende Tutorial von beiden (Django, Extjs) durchgeführt haben, verfügen Sie über genügend Informationen, um die in der Frage angegebene Aufgabe auszuführen. Später können Sie andere Optionen ausprobieren.
Übrigens, Extjs, wenn nur für Open Source-Projekte kostenlos, berücksichtigen Sie dies.
Übrigens, um das Python-Framework auf dem Server auszuführen, benötigen Sie einen Webserver mit wsgi. Meine Option ist Nginx + uwsgi. Schauen Sie sich den Abschnitt zur Bereitstellung in der Django-Dokumentation an.
Für die Darstellung der Geometrie auf der Clientseite bietet OpenLayers die Möglichkeit, Daten in einem bestimmten Format und einer bestimmten Projektion zu lesen / schreiben. Dies kann über die hier beschriebene OpenLayers.Format-Klasse erfolgen. Für solche Vektoroperationen empfehle ich das GeoJSON-Format.
In Ihrem Beispiellink wird die Geometrie gelesen. Ihre App sollte Feature / Vektor berücksichtigen
Für die Serverseite gibt es , wie Pablo vorgeschlagen hat , einige Bindungen für das Django-Framework für Python.
quelle