You are not logged in.

#1 2017-10-03 23:34:52

tagtheworld
Member
Registered: 2012-04-25
Posts: 195

Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

hallo und guten Abend,


habe eine Frage zu den Regionen - bzw. Suchen die man in Overpass-Turbo in Suchanfragen eingeben kann.

die untenstehende  Abfrage läuft mit diversen Regionen


Bayern,
Thüringen
Hamburg
Paris



[out:csv(::id,::type,"name","addr:postcode","addr:city","addr:street","addr:housenumber","website"," contact:email=*")][timeout:300];
area[name="belgien"]->.a;
( node(area.a)[amenity=hospital];
  way(area.a)[amenity=hospital];
  rel(area.a)[amenity=hospital];);
out;


nicht jedoch mit

Spanien
Frankreich
Italien  usw usf


warum ist  das so!? Wie kann ich hier sinnvolle Ergebnisse erzielen - bzw. Abfragen so stellen, dass diese zielführend ist!?

Freue mich von Euch zu hoeren...

vg


https://wiki.openstreetmap.org/wiki/User:Tagtheworld - interested in all things concerning osm especially those related to the languages Perl, PHP, Python and the databases MySQL and Postgresql.

Offline

#2 2017-10-04 07:54:35

Harald Hartmann
Member
From: 98667 Schönbrunn
Registered: 2014-04-02
Posts: 3,123
Website

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

Weil overpass turbo hier eine Nominatim Abfrage durchführt, und von dort das "erste" Ergebnis nimmt, was z.B. bei Frankreich NICHT das country ist! (Wobei Italien und Spanien eigentlich passen müsste).
Zielführender sollte die Abfrage nach dem jeweiligen Isocode sein. Siehe dazu auch Select areas by name wink

Last edited by Harald Hartmann (2017-10-04 07:55:50)


Mein aktives Gebiet: Gemeinde Schleusegrund
Fingerprint meines Schlüssels: 71F7 3CD9 B647 9079 6B88 326E 8B8B 72AE 34F9 5AAD

Offline

#3 2017-10-07 11:48:56

tagtheworld
Member
Registered: 2012-04-25
Posts: 195

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

hallo Harald

vielen herzlichen Dank - das hilft weiter.


Harald Hartmann wrote:

Weil overpass turbo hier eine Nominatim Abfrage durchführt, und von dort das "erste" Ergebnis nimmt, was z.B. bei Frankreich NICHT das country ist! (Wobei Italien und Spanien eigentlich passen müsste).
Zielführender sollte die Abfrage nach dem jeweiligen Isocode sein. Siehe dazu auch Select areas by name wink


das hat  ein AHA-Effekt aus geloest: mit France lässt sich die obige Abfrage auch sehr gut machen. 


nehme jetzt die Bezeichnungen von hier:  http://www.geonames.org/countries/

allerdings - Spain oder Germany funktionieren nicht - da bricht dann die Abfrage ab.

Warum das so ist weiß ich noch nichrt!?

siehe hier 

[out:csv(::id,::type,"name","addr:postcode","addr:city","addr:street","addr:housenumber","website"," contact:email=*")][timeout:600];
area[name="Spain"]->.a;
( node(area.a)[amenity=hospital];
  way(area.a)[amenity=hospital];
  rel(area.a)[amenity=hospital];);
out;

oder hier

[out:csv(::id,::type,"name","addr:postcode","addr:city","addr:street","addr:housenumber","website"," contact:email=*")][timeout:600];
area[name="Gernany"]->.a;
( node(area.a)[amenity=hospital];
  way(area.a)[amenity=hospital];
  rel(area.a)[amenity=hospital];);
out;


- Was mich noch interessiert - was passiert wenn  man den Timeout auf 6000 stellen würde. Geht das noch über die Overpass-Tubo Frontend oder sollte man da andere Verfahren einsetzen!?



Freu mich von Dir zu hoeren.
LG Tag The world


https://wiki.openstreetmap.org/wiki/User:Tagtheworld - interested in all things concerning osm especially those related to the languages Perl, PHP, Python and the databases MySQL and Postgresql.

Offline

#4 2017-10-07 12:08:56

MKnight
Member
Registered: 2012-08-01
Posts: 2,065

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

tagtheworld wrote:

[name="Gernany"]->.a;

Nicht getestet, aber Germany könnte helfen... smile


gesammelte Overpass-abfragen zu QA (hauptsächlich Strassenfehler) + verschiedene Stats zu Strassen-eigenschaften

Offline

#5 2017-10-07 12:13:00

mmd
Member
Registered: 2010-11-06
Posts: 1,772

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

Ich glaube die Übung bringt wahrscheinlich nicht den erhofften Nutzen.

Wenn man Glück hat, ist der Name gepflegt. Postcode, city, street, housenumber, website oder contact:email fehlen doch in >80% der Einträge für Frankreich oder Spanien.

So eine Liste wäre eigentlich nur für jemanden brauchbar, der diese Tags in OSM vervollständigen möchte.

Last edited by mmd (2017-10-07 12:28:44)

Offline

#6 2017-10-07 14:16:30

DD1GJ
Member
Registered: 2009-04-12
Posts: 679

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

Nimm die in OSM im Namen hinterlegten Bezeichnungen in Verbindung mit geocodeArea, z.B.
{{geocodeArea:Deutschland}}->.a;
oder
{{geocodeArea:España}}->.a;

Timeout 600 reicht bei mir vollkommen. Für größere Datenmengen gibt es die Länder-Auszüge der Geofabrik (PBF) in Verbindung mit Osmfilter und Osmconvert.

Einige Informationen stehen aber auch unter contact:website oder email. Außerdem solltest Du berücksichtigen, dass manchmal auch normale Arztpraxen oder Rot-Kreuz einrichtungen fälschlicherweise als Krankenhäuser getaggt sind.

Von den über 2500 Krankenhäusern in Spanien haben 1998 keine Straßenangabe in ihrer Adresse, 2067 keinen Ort, 2090 keine Postleitzahl sowie nur 7 eine contact:email, 5 eine contact:website, 16 eine email und 107 eine website.

Eine CSV-Liste dürfte da ziemlich wertlos sein. Was willst Du damit machen?

Offline

#7 2017-10-07 21:36:57

tagtheworld
Member
Registered: 2012-04-25
Posts: 195

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

hallo und guten Abend MKnight. mmd. DD1GJ,



vielen Dank für die Informatinoen - für eure Antworten

vorweg: das joer ost eome tolle Seite: https://wiki.openstreetmap.org/wiki/Ove … by_Example
Diese Beispiele - sie sind sehr sehr hilfreich u. bieten viele Materialen u. Zugänge zu Turboabfragen:


Das hier - untenstehende -  hilft weiter;

Nimm die in OSM im Namen hinterlegten Bezeichnungen in Verbindung mit geocodeArea, z.B.
{{geocodeArea:Deutschland}}->.a;
oder
{{geocodeArea:España}}->.a;

vielen Dank dafür!!!


klar Spanien ist nicht so gut u. vollstänndig. Viele besser sind die dt. Krankenhäuser erfasst bwl,  getaggt.

Timeout 600 reicht bei mir vollkommen. Für größere Datenmengen gibt es die Länder-Auszüge der Geofabrik (PBF) in Verbindung mit Osmfilter und Osmconvert.

bei mir reichen auch Timeout 600

osmfilter u. Osmconvert - ´damit habe ich azuch schon gearbeitet.

Die Abfrage damit ist auch sehr leistungsfähig


Verfahren: ich will das quasi automatisieren -


Es geht darum - immer den neuesten Datensatz zu haben - in einer Mysql DB.

Wie vorgehen;

Also diffs die  nachkommen mit erheben  / u. somit eine Datenbank immer wieder updaten

Hab das schon auch mal überlegt mit Perl zu machen: https://wiki.openstreetmap.org/wiki/Use … world/Perl

Wie würdet Ihr das machen.


Mit einem File der Geofabrik - u osmfilter & osmconvert!?

Last edited by tagtheworld (2017-10-07 21:38:08)


https://wiki.openstreetmap.org/wiki/User:Tagtheworld - interested in all things concerning osm especially those related to the languages Perl, PHP, Python and the databases MySQL and Postgresql.

Offline

#8 2017-10-07 21:53:37

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,502
Website

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

tagtheworld wrote:

Wie würdet Ihr das machen.

Nicht böse sein: Die lokale DB auf PostgreSQL/PostGIS umstellen. wink

Du versuchst eine Toolchain, die von Anfang an für PS/PG entwickelt wurde, in einer MySQL-Umgebung zum Laufen zu bringen.

Das ist mMn nicht die Mühe wert.

Gruss
walter

Last edited by wambacher (2017-10-07 21:53:57)

Offline

#9 2017-10-08 14:28:49

tagtheworld
Member
Registered: 2012-04-25
Posts: 195

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

hallo Walter,


vielen Dank für deine Antwort - mit den Empfehlungen - doch auf PostGIS umzusteigen.:

Habe mir das PostGIS  mal angesehen - sieht sehr gut aus.  Das sieht sehr sehr advanced aus - ich werde mir das mal genauer ansehen..Denke dass diese wohl sehr leistungsfähig ist.

was ich bis dato alles eingesetzt habe:

- Osmfilter und Osmconvert.

OSM und Scripten:


- OSM Overpass API mit PHP SimpleXML:  an Overpass Daten kommen mit Standard PHP.

- Wget; http://overpass-api.de/command_line.html

Und für das weiterverarbeiten in Skripten finde ich Python sehr interessant:

-  query Overpass Python library  https://github.com/mvexel/overpass-api-python-wrapper

-  das Node JS package  https://www.npmjs.com/package/query-overpass

- für das Speichern großer Mengen von Daten - etwa in einer mysql-database mittels Python hier kann man z.B. auch peewee verwenden.


Perl:

- das Datenabfrage-Utility "opaQuery.pl von user KLAUS TOCKLOTH: http://www.freizeitkarte-osm.de/  perl scrip  hab auch schon mit KLAUS TOCKLOTHs opaQuery einiges gemacht; das Datenabfrage-Utility "opaQuery.pl" Das Utility nutzt für OSM-Datenabfragen das Overpass-API unter Verwendung der Abfragesprache "Overpass-QL". Das Utility wird von der Kommandozeile aus benutzt und ist unter Linux, ( vgl. https://forum.openstreetmap.org/viewtopic.php?id=16937 )

Nutzung:perl opaQuery.pl "Overpass-QL-String"

Beispiel: perl opaQuery.pl "node ['name'='Gielgen'] (50.7,7.1,50.8,7.2); out meta;"
Weitere Details zum Utility finden sich hier: http://www.easyclasspage.de/maptools/index.html


PHP:

- OSM Overpass API mit PHP SimpleXML:  an Overpass Daten kommen mit Standard PHP.

last  but not least: Wget und Curl:

- Wget; http://overpass-api.de/command_line.html

- Curl - hier ein Beispiel:

Curl: curl 'http://nominatim.openstreetmap.org/sear … onnecticut' -H 'Origin: http://overpass-turbo.eu' -H 'Accept-Encoding: gzip,deflate,sdch' -H 'Accept-Language: en-US,en;q=0.8' -H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.111 Safari/537.36' -H 'Accept: */*' -H 'Connection: keep-alive' --compressed
[{"place_id":"2578289456","licence":"Data \u00a9 OpenStreetMap contributors, ODbL 1.0. http:\/\/www.openstreetmap.org\/copyright","osm_type":"way","osm_id":"305805056","boundingbox":["41.2371844","41.3774174","-73.5509631","-73.438191"],"lat":"41.2814842","lon":"-73.4981792","display_name":"Ridgefield, Fairfield County, Connecticut, United States of America","class":"boundary","type":"administrative","importance":0.62842337196131,"icon":"http:\/\/nominatim.openstreetmap.org\/images\/mapicons\/poi_boundary_administrative.p.20.png"},{"place_id":"57921086","licence":"Data \u00a9 OpenStreetMap contributors, ODbL 1.0. http:\/\/www.openstreetmap.org\/copyright","osm_type":"way","osm_id":"21923588","boundingbox":["42.2668794","42.2694486","-88.3335358","-88.3264975"],"lat":"42.2694329","lon":"-88.3290606","display_name":"Connecticut Trail, Holcombville Corners, McHenry County, Illinois, 60012, United States of America","class":"highway","type":"residential","importance":0.2}]


Fazit: werde mir PostGIS jetzt mal näher ansehen...


Walter, Dir nochmals vielen Dank!!

Last edited by tagtheworld (2017-10-09 14:59:54)


https://wiki.openstreetmap.org/wiki/User:Tagtheworld - interested in all things concerning osm especially those related to the languages Perl, PHP, Python and the databases MySQL and Postgresql.

Offline

#10 2017-10-08 15:51:30

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,502
Website

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

tagtheworld wrote:

Habe mir das PostGIS  mal angesehen - sieht sehr gut aus.  Das sieht sehr sehr advanced aus - ich werde mir das mal genauer ansehen.Denke dass diese wohl sehr leistungsfähig ist.

Jo, das hast du recht.

Es gibt übrigens auch die Möglichkeit, PS/PG mit MySQL zu verknüpfen, d.h. man kann - wenn man es kann - durchaus auf beide Datenbanken gemeinsam zugreifen. Bis hin zu Abfragen, wo ein Teil  aus PS/PG kommt und ein anderer Teil aus MySql. Ist aber wirklich "advanced".

Gruss
walter

Offline

#11 2017-10-09 15:05:25

tagtheworld
Member
Registered: 2012-04-25
Posts: 195

Re: Abfragen in Overpass-Turbo laufen - aber nicht mit jedem Begriff

Hallo Walter,

vielen Dank für Deine Antwort. Werde mir das mal ansehen. Ich hab halt nicht vor so tief einzusteigen, werde auch nicht mit shapefiles arbeiten.

Was bei mir im Vordergrund steht ist der Einsatz von Toolchains bei Abfragen -

- Abfragen
- Weiterverarbeiten - unnd ggf. auch das
- Speichern in einer Datenbank


Ich werde mir mal PostGIS ansehen. Hoffe dass ich damit zurechtkomme.


LG


https://wiki.openstreetmap.org/wiki/User:Tagtheworld - interested in all things concerning osm especially those related to the languages Perl, PHP, Python and the databases MySQL and Postgresql.

Offline

Board footer

Powered by FluxBB