Comment récupérer hôtels avec OverpassTurbo?

Extraire des données OSM, créer sa carte, uMap, utiliser sur un GPS ou un smartphone...
Winfried
Messages : 20
Inscription : jeu. juin 30, 2016 9:35 am

Comment récupérer hôtels avec OverpassTurbo?

Message par Winfried » jeu. mars 16, 2017 12:21 pm

Bonjour

Je voulais récupérer la liste des hôtels low-cost Formule 1 en France. J'ai donc utilisé la requête suivante dans OverpassTurbo:

Code : Tout sélectionner

[out:json][timeout:400];
{{geocodeArea:france}}->.searchArea;
(
 node["name"="Formule 1"]["tourism"="hotel"](area.searchArea);
 way["name"="Formule 1"]["tourism"="hotel"](area.searchArea);
 relation["name"="Formule 1"]["tourism"="hotel"](area.searchArea);
);
out body;
>;
out skel qt;
Le problème, c'est que cette requête ne retourne pas seulement les hôtels représentés par un node ou un way (building), mais également les nodes qui composent un way… ce qui fait que la requête retourne plus de 600 éléments alors qu'il n'y a qu'environ 230 hôtels F1 en France.

Exemple : comme indiqué dans la page, le node suivant fait partie d'un way:
http://www.openstreetmap.org/node/1334936588

Comment faire pour qu'OT ne retourne que les nodes "uniques" et non ceux qui composent un immeuble?

Merci.

Avatar de l’utilisateur
gendy54
Messages : 179
Inscription : ven. juil. 11, 2014 10:31 pm
Localisation : Paris, Nancy

Re: Comment récupérer hôtels avec OverpassTurbo?

Message par gendy54 » jeu. mars 16, 2017 1:05 pm

J'ai relancé la requête. Je ne vois a priori pas d'erreur, ni ce que tu décris.
Il faudrait aussi que tu élargisses ta requête à "F1", car je trouve que y a pas beaucoup de résultats.
Donat ROBAUX

Avatar de l’utilisateur
cquest
Messages : 1540
Inscription : ven. avr. 16, 2010 12:22 am
Localisation : Val de Marne
Contact :

Re: Comment récupérer hôtels avec OverpassTurbo?

Message par cquest » dim. mars 19, 2017 3:06 pm

Pour ne récupérer qu'un seul objet par hotel, on peut demander le "center"

Code : Tout sélectionner

[out:json][timeout:400];
{{geocodeArea:france}}->.searchArea;
(
 node["name"="Formule 1"]["tourism"="hotel"](area.searchArea);
 way["name"="Formule 1"]["tourism"="hotel"](area.searchArea);
 relation["name"="Formule 1"]["tourism"="hotel"](area.searchArea);
);
out center;

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité