Wie kann ich aus OpenStreetMap-XML-Dateien die Straßen extrahieren?

2 Antworten

Mit Osmosis (http://wiki.openstreetmap.org/wiki/DE:Osmosis) kannst Du aus einer OSM-Datei (*.osm, *.pbf) Objekte mit einem bestimmten Wert herausfiltern:

osmosis --read-xml input.osm --way-key-value keyValueList="highway.motorway,highway.motorway_link" --used-node --write-xml output.osm

Mit diesem Befehl werden z.B. alle Autobahnen herausgefiltert. Für alle öffentlichen, mit Kfz befahrbaren Straßen würde ich die Werte motorway, trunk, primary, secondary, tertiary, residential, living_street, unclassified (jeweils noch mit "_link") des Highway-Tags verwenden.

Wenn Du lernst, wie man generell aus XML-Dateien Daten extrahierst, dann kannst Du das auch für Straßen. Hier ist nicht OSM Dein Problem sondern XML.Wie willst Du die Straßen haben? Nur die Namen? Die Vektoren? Nur die Typen (Autobahn, Fußweg, Radweg) ? Aus welchem Gebiet? In welches Zielformat?Such im Wiki von OSM nach "Straßenliste" und mach Dich über XSLTPROT schlau.Es gibt auch Firmen, die sich auf OSM Dienstleistungen spezialisiert haben.