You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#1 2015-09-11 15:55:07

tagtheworld
Banned
Registered: 2012-04-25
Posts: 236

overpass-t: healthcare in spanien - timeout & exportfragen

hallo und guten Abend liebe Community,

bin soeben dabei eine Suche nach Hospitälern & Kliniken in West- und Südeuropa. Fokus:

Griechenland, Italien, Spanien, Portugal, Frankreich ....


früher hätte ich das mit osmconvert gemacht. aber es ist wohl einfacher mit overpass-turbo.


Ansatz: Das geht wohl auch über

amenity: healthcare=hospital - dachte ich wenigstens

Vor einiger Z eit hab ich folgendes noch mit overpass-turbo gemacht:


eine ADIFF z.B. vieles ging wunderbar mit Overpass API (momentan nur zurück bis Juni 2014 bis zum DB rebuild) Beispiel 1: Schulen in Argentinien am 1.6.2014:

[date:"2014-06-01T00:00:00Z"];area[name="Argentina"][boundary=administrative]->.a;(node(area.a)[amenity=school];way(area.a [amenity=school];);out center;


oder auch Beispiel 2: Änderungen an Schulen in Argentinien seit dem 1.7.2014 (mit Berücksichtigung gelöschter Objekte)

[adiff:"2014-07-01T00:00:00Z"];area[name="Argentina"][boundary=administrative]->.a;(node(area.a)[amenity=school];way(area.a)[amenity=school];);out center;

oder auch das:

[adiff:"2014-07-01T00:00:00Z"];area[name="Argentina"][boundary=administrative]->.a;(node(area.a)[amenity=school][website];way(area.a)[amenity=school][website];);out center;

wenn ich aber das nun umbaue - für meine neue Abfrage: dann funktioniert das nicht richtig


[adiff:"2014-07-01T00:00:00Z"];area[name="Spain"][boundary=administrative]->.a;(node(area.a)[amenity=hospital][website];way(area.a)[amenity=hospital][website];);out center;

ich denke mal dass ich etwas falsch mache. Sollte ich dieses "Umbauen" lieber lassen u über den Wizzard gehen?


Dachte dass ich es eben immer umbauen kann für die folgenden Laender: Griechenland, Italien, Spanien, Portugal, Frankreich ....


Was meint ihr denn? Freu mich auf einen Tipp.

viele Gruesse

Last edited by tagtheworld (2015-09-12 18:54:27)


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 2015-09-12 08:58:50

tagtheworld
Banned
Registered: 2012-04-25
Posts: 236

Re: overpass-t: healthcare in spanien - timeout & exportfragen

koennte das auch ohne adiff versuchen. Dann geht es ja auch leichter. Der Witz - mit  dem Wizzard klemmt diese Suche immer wieder


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

#3 2015-09-12 09:44:30

ikonor
Member
Registered: 2010-11-08
Posts: 637
Website

Re: overpass-t: healthcare in spanien - timeout & exportfragen

Es gab wohl Probleme mit areas, da würde ich erst mal abwarten, bis das behoben ist:
http://wiki.openstreetmap.org/wiki/Overpass_API/status

tagtheworld wrote:

mit  dem Wizzard klemmt diese Suche immer wieder

Meinst Du speziell den Wizard um Abfragen per Suchbegriff erstellen zu lassen oder Overpass Turbo allgemein?

Kannst Du das genauer beschreiben (Vorgehen, Fehlermeldung, Ergebnis im Daten Tab)? Bei der Ausführung sollte es keinen Unterschied geben, das Backend ist dasselbe.

Offline

#4 2015-09-12 18:52:49

tagtheworld
Banned
Registered: 2012-04-25
Posts: 236

Re: overpass-t: healthcare in spanien - timeout & exportfragen

hallo und guten Abend Ikonor,

vielen Dank für Deine schnelle Antwort. Das ist alles sehr hilfreich.  Also ich bin mit folgenden - Suche vorgegangen:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“hospital in Paris”
*/
[out:json][timeout:25];
// fetch area “paris” to search in
{{geocodeArea:paris}}->.searchArea;
// gather results
(
  // query part for: “hospital”
  node["amenity"="hospital"](area.searchArea);
  way["amenity"="hospital"](area.searchArea);
  relation["amenity"="hospital"](area.searchArea);
);
// print results
out body;
>;
out skel qt;

Das hat - wie gesagt Erfolg gehabt:

das folgende auch;:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“hospital in madrid”
*/
[out:json][timeout:25];
// fetch area “madrid” to search in
{{geocodeArea:madrid}}->.searchArea;
// gather results
(
  // query part for: “hospital”
  node["amenity"="hospital"](area.searchArea);
  way["amenity"="hospital"](area.searchArea);
  relation["amenity"="hospital"](area.searchArea);
);
// print results
out body;
>;
out skel qt;



mit dem dritten Versuch allerdings bin ich nicht weitergekommen - das hat einen Timeout ergeben. Wie soll ich hier vorgehen.


/*
This has been generated by the overpass-turbo wizard.
The original search was:
“hospital in france”
*/
[out:json][timeout:25];
// fetch area “france” to search in
{{geocodeArea:france}}->.searchArea;
// gather results
(
  // query part for: “hospital”
  node["amenity"="hospital"](area.searchArea);
  way["amenity"="hospital"](area.searchArea);
  relation["amenity"="hospital"](area.searchArea);
);
// print results
out body;
>;
out skel qt;

Die Fehlermeldung;

Ein Fehler ist während der Ausführung der Abfrage aufgetreten. Folgendes hat die API als Fehlermeldung zurückgegeben:
runtime error: Query timed out in "query" at line 12 after 26 seconds.

Frage - was kann ich hier tun - damit es nicht in einen timeout läuft. Gibt es Moeglichkeiten das zu umgehen?

Weiterhin: Wie kann ich das Ganze so filtern, dass ich

a. das ganze in einer Excel /( Calc-Tabelle) speichern kann - oder in einer MysqlDB.


Freue mich auf einen Tipp

Vg TagTheWorld smile



{
  "version": 0.6,
  "generator": "Overpass API",
  "osm3s": {
    "timestamp_osm_base": "2015-09-12T17:49:02Z",
    "timestamp_areas_base": "2015-09-11T13:16:03Z",
    "copyright": "The data included in this document is from www.openstreetmap.org. The data is made available under ODbL."
  },
  "elements": [

{
  "type": "node",
  "id": 243487699,
  "lat": 48.8389743,
  "lon": 2.3594500,
  "tags": {
    "amenity": "hospital",
    "name": "Clinique Paris V - Centre Médico Chirurgical",
    "website": "http://www.generale-de-sante.fr/clinique-paris-v-paris"
  }
},
{
  "type": "node",
  "id": 416548856,
  "lat": 48.8660888,
  "lon": 2.3735141,
  "tags": {
    "amenity": "hospital",
    "name": "Clinique de Vinci (fermée)"
  }
},
{
  "type": "node",
  "id": 977194624,
  "lat": 48.8435512,
  "lon": 2.3549103,
  "tags": {
    "amenity": "hospital",
    "name": "Clinique Geoffroy Saint-Hilaire"
  }
},
{
  "type": "node",
  "id": 1381921170,
  "lat": 48.8415381,
  "lon": 2.3513578,
  "tags": {
    "amenity": "hospital",
    "name": "Centre municipal de santé"
  }
},
{
  "type": "node",
  "id": 1462112612,
  "lat": 48.8604665,
  "lon": 2.2777715,
  "tags": {
    "amenity": "hospital",
    "name": "Clinique de la Muette",
    "website": "http://www.clinique-delamuette.fr"
  }
},


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

#5 2015-09-13 13:00:14

ikonor
Member
Registered: 2010-11-08
Posts: 637
Website

Re: overpass-t: healthcare in spanien - timeout & exportfragen

tagtheworld wrote:

mit dem dritten Versuch allerdings bin ich nicht weitergekommen - das hat einen Timeout ergeben. Wie soll ich hier vorgehen.

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“hospital in france”
*/
[out:json][timeout:25];
// fetch area “france” to search in
{{geocodeArea:france}}->.searchArea;
...

Die Fehlermeldung;

Ein Fehler ist während der Ausführung der Abfrage aufgetreten. Folgendes hat die API als Fehlermeldung zurückgegeben:
runtime error: Query timed out in "query" at line 12 after 26 seconds.

Frage - was kann ich hier tun - damit es nicht in einen timeout läuft. Gibt es Moeglichkeiten das zu umgehen?

[timeout:25] gibt an wie hoch der Timeout ist:
http://wiki.openstreetmap.org/wiki/Over … QL#timeout

Standard ist 180 Sekunden, der Wizard setzt den mit 25 Sekunden recht niedrig. Die france Abfrage lief bei mir mehrere Minuten, also z.B. [timeout:25] auf [timeout:600] für 10 Minuten setzen.

tagtheworld wrote:

Weiterhin: Wie kann ich das Ganze so filtern, dass ich
a. das ganze in einer Excel /( Calc-Tabelle) speichern kann - oder in einer MysqlDB.

siehe SimpleXMLElement::xpath - Daten einer OSM-Abfrage behandeln

Edit: topic -> post Link

Gruß,
Norbert

Last edited by ikonor (2015-09-13 13:02:57)

Offline

#6 2015-09-13 13:27:05

ikonor
Member
Registered: 2010-11-08
Posts: 637
Website

Re: overpass-t: healthcare in spanien - timeout & exportfragen

tagtheworld wrote:

oder auch das:

[adiff:"2014-07-01T00:00:00Z"];area[name="Argentina"][boundary=administrative]->.a;(node(area.a)[amenity=school][website];way(area.a)[amenity=school][website];);out center;

wenn ich aber das nun umbaue - für meine neue Abfrage: dann funktioniert das nicht richtig

[adiff:"2014-07-01T00:00:00Z"];area[name="Spain"][boundary=administrative]->.a;(node(area.a)[amenity=hospital][website];way(area.a)[amenity=hospital][website];);out center;

Das Problem ist, dass [name="Spain"] exakt nach diesem Tag sucht, das lautet aber "name=España". Eine Möglichkeit wäre ["name:de"=Spanien] zu nehmen, damit geht es:

[adiff:"2014-07-01T00:00:00Z"];area["name:de"=Spanien][boundary=administrative]->.a;(node(area.a)[amenity=hospital][website];way(area.a)[amenity=hospital][website];);out center;

http://overpass-turbo.eu/s/bpT

Bei diff/adiff Abfragen ist das Ausgabeformat aber ein spezielles XML-Format, da Änderungen mit alter und neuer Version geliefert werden: Augmented Diffs.

Andere Formate werden eigenlich nicht unterstützt, json scheint aber zu gehen. Weiß nur nicht, was da genau geliefert wird und ob man das verwenden sollte.

Offline

#7 2015-09-13 15:08:02

tagtheworld
Banned
Registered: 2012-04-25
Posts: 236

Re: overpass-t: healthcare in spanien - timeout & exportfragen

hallo und guten Abend Ikonor

vielen Dank für deine Antwort u. die Hilfe - das ist super!! UND hilft sehr viel weiter...

LG TagTheworld


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