[OSM-talk-fr] requête Overpass en ligne de commande
Samy Mezani
samy.mezani at wanadoo.fr
Lun 11 Sep 12:21:05 UTC 2017
Donc , pour résumer, comment n'obtenir que les *ways* membres de la
relation et surtout leur géométrie ? (pour importer dans PostGIs, ou
visionner dans QGis)
Mon but est de comprendre ces requêtes pour en faire d'autres sur des
données plus fréquemment mises à jour.
Là je veux juste obtenir un multipolygone de l'ancienne Bourgogne, comme
je le fais par exemple avec QuickOSM dans QGis, mais là uniquement en
ligne de commande.
Merci
Samy
Le 11/09/2017 à 13:53, Philippe Verdy a écrit :
>
>
> Le 11 septembre 2017 à 13:04, marc marc <marc_marc_irc at hotmail.com
> <mailto:marc_marc_irc at hotmail.com>> a écrit :
>
> Mais en ligne de commande si :
>
> 1) récupérer le minimum contenant les infos souhaitées :
> wget -O bourgogne.osm
> 'http://overpass-api.de/api/interpreter?data=rel[name=Bourgogne][
> <http://overpass-api.de/api/interpreter?data=rel[name=Bourgogne][>"disused:admin_level"=4];out;'
>
> 2) filtrer pour ne garder que la relation, les chemins et le nom
> cat bourgogne.osm | egrep '(<relation id|<member type="way" |<tag
> k="name")'
>
> On peux bien sur combiner les 2 :
> wget -O -
> 'http://overpass-api.de/api/interpreter?data=rel[name=Bourgogne][
> <http://overpass-api.de/api/interpreter?data=rel[name=Bourgogne][>"disused:admin_level"=4];out;'
> | egrep '(<relation id|<member type="way" |<tag k="name")' >
> bourgogne.osm
>
>
> Atention ce egrep supprime trop de choses, tu n'obtiendra pas un fichier
> OSM valide, ni valide en XML
> - pour la vadlité XML il faut ajouter les balises de fermeture et
> ajouter un objet racine englobant le tout (et faire attention aux
> attributs des tags qui peuvent être sur des lignes séparées et il
> manquera alors des ">" pour terminer les tags d'ouverture)
> - mais pour OSM cet objet racine doit en plus suivre le schéma OSM).
>
> Bref ce que tu obtiens c'est juste un objet plus ou moins indenté mais
> pas sûr d'avoir tous les attributs.
>
> De plus rien n'interdit à Overpass de renvoyer du XML compacté (sans
> aucun saut de ligne ni indentation).
>
> Bref il vaut mieux utiliser un vrai filtre XML basé sur le DOM après
> parsing.
>
> Noter aussi que XML/OSM n'est pas le seul format de sortie possible pour
> Overpass. XML est un peu "verbeux" avec ses tags de fermeture. D'autres
> formats possibles sont CSV, Turtle, ... Overpass permet de construire
> son format de sortie adhoc (utilisant la syntaxe de formatage pour le
> CSV). On a des exemples sur le wiki.
>
>
> _______________________________________________
> Talk-fr mailing list
> Talk-fr at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/talk-fr
>
Plus d'informations sur la liste de diffusion Talk-fr