ich suche eine Möglichkeit alle vorhandenen gleichnahmigen Orte und Gemeinden in Deutschland gleichzeitig am PC angezeigt zu bekommen. Ich bekomme oft bei Verkehrszählungsauswertungen eine Ortsangabe ohne jeden Hinweis was in der Nähe ist. Z.B. “Hausen” oder “Reute”. Und dann habe ich das Problem den passenden Ort zu wählen.
Wichtig ist hier, dass auch alle kleinen Orte und Gemeindeteile drin sind. Gerade um die geht es meistens.
Ideal wäre eine Anzeige in einer Karte. Notfalls reicht mir aber auch eine Koordinatenliste (Exceltabelle, CSV, TXT u.s.w) aller Orte. Die kann ich dann teilweise selektiert z.B. in Routekonverter einlesen und mir als Wegpunkte anzeigen lassen.
[out:json][timeout:25];
{{geocodeArea:Germany}}->.searchArea;
(
node["place"]["name"="Schornbach"](area.searchArea); // "Schornbach" durch den gewünschten Namen ersetzen
);
// print results
out body;
>;
out skel qt;
Den Code eingeben, Schornbach durch den gewünschten Namen ersetzen und ausführen.
Danke - funktioniert aber nicht bzw. nicht richtig. Habe als Ort “Langenau” eingegeben. Dann läuft was sehr lange im Hintergrund. Und wenn es dann fertig scheint, ist nichts passiert. Die Karte bleibt unverändert stehen wie vorher. Wenn ich von Kartendarstellung auf Daten umschalte sehe ich irgend einen Abfragetext/Script, indem mein Suchbegriff mehrmals auftaucht. Und auf der Karte selbst ganz rechts sind wohl 7 Treffer angezeigt. Das könnte passen. Nur bekomme ich das nicht zur Anzeige. Habe auch andere Orte versucht. Die Kartenanzeige rechts unten könnte zum jeweiligen Ergebnis passen. Nur eben kommt keine aktualisierte Karte mit den Treffern.
Das hilft mir leider nicht weiter. Mir geht es darum zu sehen, wo sich Orte gleichen Namens in Bezug zu einem bestimmten Ort befinden. Z.B. alle “Weiler” bezogen auf Stockach. Und dazu brauche ich halt die gleichzeitige Anzeige der Suchorte
[out:csv(name,::lat,::lon,is_in)][timeout:25];
{{geocodeArea:Germany}}->.searchArea;
(
node["place"]["name"="Langenau"](area.searchArea); // "Schornbach" durch den gewünschten Namen ersetzen
);
// print results
out body;
>;
out skel qt;
Wenn es um eine so konkrete Abfrage geht, lässt sich sicherlich ein GUI darum stricken, wo nur noch der Name eingegeben werden muss.
So eine kleine GUI wäre toll. Oder wenn man das per WEB-Link aufrufen könnte. Und im Link dann den/die Parameter übergeben.
Mit out:csv(::lon,::lat,name bekomme ich eine Liste, die ich direkt per C&P in meinen RouteKonverter kopieren kann. Sehe also mit einen Blick alle Trefferorte. So weit ganz toll
Leider hat das Programm wohl einen Fehler.
Suche nach “Ehingen” bringt diverse Ehingen. So weit ok.
Aber das Haupt-Ehingen hier in BW fehlt. Es ist in OSM als “Ehingen (Donau)” eingetragen und wird bei der Suche nach Ehingen übergangen.
Dito bei “Kirchheim” - Alle möglichen Kirchheim kommen. Nur nicht das “Kirchheim unter Teck”
Oder gar Frankfurt. Da kommt nur ein Treffer. Mit “Frankfurt (Oder)” kommt das andere Fft.
ist dokumentiert, dass “~” benutzt werden kann um “ungefähre” Ergebnisse (durch reguläre Ausdrücke) zu berücksichtigen
und nicht nur “genaue” Treffer mit “=”.
Die Overpass Abfrage sieht etwas unvollständig aus, da fehlen mindestens noch Ways und Relations. Außerdem geht da keine Ähnlichkietssuche bei Tippfehlern!
das ist leider für meine Zwecke völlig unbrauchbar. Ich bekomme da entweder riesige Listen mit viel Informationen. Oder es findet viel zu wenig Orte. Bei “Try Me” z.B. mit “Reute” nur 5 gelistete Treffer.
Auf jeden Fall kann ich mit den Ergebnissen nichts anfangen.
Habe ich gemacht. Siehe unten. Bringt aber gar kein Ergebnis. Und ich verstehe diese Abfragesprache überhaupt nicht
/*
This has been generated by the overpass-turbo wizard.
The original search was:
“type:node and place=* and name like "Frankfurt" in Germany”
*/
[out:json][timeout:25];
// fetch area “Germany” to search in
{{geocodeArea:Germany}}->.searchArea;
// gather results
(
// query part for: “place=* and name~Frankfurt”
node["place"]["name"~"Frankfurt"](area.searchArea);
);
// print results
out body;
>;
out skel qt;
Die Syntax oben ist overpass turbo wizard, ist einfacher zu verstehen. Vielleicht ist dir aufgefallen dass der wizard genau die query generiert hat, die du oben schon verwendet hast.
Nö - ich bin es gewöhnt dass Programme beim Aufruf über Kommandozeile den Befehl auch ausführen. Sonst brauche ich ja keine Kommandozeile. Das geht es ja schneller wenn ich den Code reinkopiere bzw. vorhandenen Code entsprechend meines Ortswunsches manuell abändere.