Abstand zu Public Transport Haltestellen

Hallo zusammen,

ich bin neu hier & würde gerne die Nähe von E-Scootern zu z.B. Haltestellen des ÖPNV untersuchen. :slight_smile:
Daher ist meine erste generelle Frage:

→ Gibt es eine Seite mit allen tags (?) bzw. Kategorisierungen, die man mit OSM bzw. Overpass nutzen kann, um entsprechende Standortdaten zurückzubekommen? Von Apotheken, über Bars & Clubs bis hin zu eben Haltestellen?

Bislang habe ich nur verschiedene Einzelseiten oder -einträge gefunden…

Bei dem speziellen Fall der Haltestellen nutze ich aktuell den selector “public_transport”=“stop_position”, der bei Bushalten idR Sinn macht, aber bei z.B. U-Bahn Stationen nicht optimal ist, da die Scooter an den Zugängen abgestellt werden und entsprechend die Eingangspunkte interessant wären.

**-> Kennt da jemand einen besseren Selector? **

Meinen bisherigen Code habe ich unten angehängt… in dem darauf folgenden Schritt berechne ich dann die Distanz von den einzelnen Scootern zu den Haltepunkten.

from OSMPythonTools.nominatim import Nominatim
from OSMPythonTools.overpass import Overpass
from OSMPythonTools.overpass import overpassQueryBuilder
from geopy import distance
import json
import csv

nominatim = Nominatim()
hannover = nominatim.query('Hanover, Germany')

query = overpassQueryBuilder(area=hannover.areaId(), elementType='node', selector='"public_transport"="stop_position"')
# public_transport = platform zT mit noch leicht abweichenden/mehr Stationen

overpass = Overpass()
response = overpass.query(query)

stations = list()

for s in response.elements():
	station = dict()
	station["name"] = s.tag("name")
	station["lat"] = s.lat()
	station["lon"] = s.lon()
	stations.append(station)

with open("publicTransportHannover.csv", "w", newline="") as csvFile:
	fieldnames = list(station.keys())
	writer = csv.DictWriter(csvFile, fieldnames = fieldnames)
	writer.writeheader()
	for station in stations:
		writer.writerow(station)

Vielen Dank vorab!! :slight_smile:

War hier auch schon eine Frage:
https://wiki.openstreetmap.org/wiki/DE:MENTZ_GmbH/Modellierungsvorschl%C3%A4ge_Indoor#Zug.C3.A4nge

Ob und wie es genutzt wird?
https://openlevelup.net/?l=0#18/51.04002/13.73304
https://indoorequal.org/#map=16.79/50.106901/8.663518

ah okay, danke :slight_smile:

Das heißt, ich tausche in meiner Abfrage einfach

"public_transport"="stop_position"

durch

aus, korrekt?

Am Beispiel Hannover hilft das z.B. beim Hauptbahnhof und an 2-3 anderen U-Bahn-Stationen, aber an den meisten Stationen sind wohl keine Eingänge markiert (z.B. auch nicht bei Bahnsteigen, die von zwei Seiten zugänglich sind).

→ Das heißt dann, dass man auf diese nicht zugreifen kann bzw. diese noch nicht angelegt wurden, oder?

Für eine OSM-Haltestelle muss entweder die Halteposition oder der Steig oder beides angegeben sein. Ob ein “entrance” angegeben ist ändert nichts am Vorhandensein der Haltestelle … aber vielleicht an den Abständen die Dich interessieren …

Die Halteposition ist immer ein Node und kann durch eines oder mehrere der Folgenden markiert sein:

  • public_transport=stop_position
  • highway=bus_stop in einem für Busse geeigneten Weg
  • amenity=bus_station als Node in einem für Busse geeigneten Weg
  • railway=halt in einem Gleis

Der Steig kann ein Node, ein Way oder eine Fläche (auch ein Multipolygon) sein und kann durch eines oder mehrere der folgenden Tags markiert sein:

  • public_transport=platform
  • highway=bus_stop nicht in einem für Busse geeigneten Weg
  • amenity=bus_station als Node nicht in einem für Busse geeigneten Weg
  • highway=platform
  • railway=platform

(Flughäfen sind in OSM nicht als ÖPV erfasst!)