Comment extraire "l'administrative boundary" liée à un numéro de rue

Bonjour,
Lorsque j’utilise dans openstreetmap la fonction “query feature” et que je pointe un numéro de rue sur la carte : dans la marge de droite de l’écran “enclosing features” apparait l’ “administarive boundary”.

Comment récupérer cette information dans un fichier osm , par exemple celui ci : http://download.geofabrik.de/europe/france/midi-pyrenees.html j’utilise le fichier : midi-pyrenees-latest.osm.bz2.

Voir exemple ci-dessous dans openstreetmap:

Sur le site web, ceci est traité par un géocodage inverse dans nominatim.

Si il s’agit de trouver dans quelle commune se trouve l’adresse (ou une quelconque coordonnée géographique), il suffit de reprendre le fichier des contours administratifs communaux plutôt que de prendre l’intégralité des données OSM (99,9% ne concerne pas les limites administratives).

https://www.data.gouv.fr/fr/datasets/decoupage-administratif-communal-francais-issu-d-openstreetmap/

Merci pour la réponse.

Est ce que les données sont bien celles ci : http://osm13.openstreetmap.fr/~cquest/openfla/export/?C=M;O=D ?
J’ai downloader le fichier : communes-20200101-shp.zip

J’ai transformé les données communes-20200101-shp.zip en osm (1.1Gb ) mais je ne trouve pas la zone administrative indiquée sur l’image.

Où sont les numéros de rue contenus dans la zone administrative “lardenne - pradette - basso cambo” ?

Ce fichier shapefile ne contient QUE les limites de communes.

“lardenne - pradette - basso cambo” est un sous découpage de la commune, un quartier, et son admin_level=11 est franchement atypique et n’est pas à proprement parler une zone administrative.

Que veux-tu faire précisément et sur quelles données/quelle périmètre (uniquement Toulouse ?) ?
Qu’as-tu comme données en entrée et que veux-tu à la sortie…

Comme indiqué sur l’image openstreetmap : je souhaite connaître la zone administrative à laquelle appartient une rue ou un numéro de rue en utilisant un fichier osm ou autre, ou en extrayant d’une base de données les informations.
Ensuite avec ce fichier et un programme python je pourrais lister pour une zone administrative tous les numéros de rue qui appartiennent géographiquement à une zone administrative.

je pourrais lister pour une zone administrative tous les numéros de rue qui appartiennent géographiquement à une zone administrative

C’est donc ça l’objectif final ?

Sur quelle périmètre ? Toulouse ? France ? Monde ?

A nouveau, je rappelle que “lardenne - pradette - basso cambo” n’est pas une zone administrative, mais un nom de quartier et qu’on a ces infos qu’à certains endroits, pas partout.

Ce qu’on a partout c’est le nom de la commune, et là pas besoin de chercher midi à 14h… il suffit de prendre la Base Adresse Nationale (ou BANO) et on a les adresses avec le nom de commune où elles se trouvent et zéro extraction à faire.

A nouveau, je rappelle que “lardenne - pradette - basso cambo” n’est pas une zone administrative, mais un nom de quartier et qu’on a ces infos qu’à certains endroits, pas partout.

Quand je fais un export de la zone qui correspond à l’image de mon 1er post, voici ce que l’on lit dans le fichier .osm : “”

D’où ma question : “Quelles données sont utilisées dans openstreetmap pour afficher la “boundary administrative” associée à un numéro de rue pour la commune de Toulouse ?”
Voir l’image de mon premier post qui démontre que ces données existent pour Toulouse puisqu’elles s’affichent dans openstreetmap.

Je suppose que les objets englobants de type « limite administrative » sont déterminés en cherchant dans quels polygones est inclus le point adresse considéré, grâce à une fonction PostGIS comme ST_Within()

Oui, ce sont bien ces données qui sont utilisées, mais après plusieurs étapes de traitement !

  1. regénérer des geométries à partie des relations boundary, en prenant les way qui forment les frontières et les noeuds contenant les coordonnées lat/lon
  2. utiliser par exemple ST_Within dans postgis pour trouver dans quelle boundary se trouve le point.

La première étape n’est pas triviale, il y a une ribambelle d’outils qui font ça pas la peine de réinventer l’eau tiède (osm2pgsql, imposm, gdal/ogr, etc).


Ok, c’est le tag utilisé, mais admin_level=11 est une valeur peut courante… on est dans un cas assez particulier quasi isolé sur Toulouse d’où ma question répétée: c’est quoi le but final ? (dernier essai)

le but final est : “avec un programme python : lister les numéros de rues qui appartiennent à un et avoir en résultat final un fichier texte qui liste les numéros de rue et la boundary” v=“administrative”

Exemple du résultat souhaité:


“lardenne - pradette - basso cambo”;“2 rue marie claude peroud”
“lardenne - pradette - basso cambo”;“6 rue marie claude peroud”
“lardenne - pradette - basso cambo”;“8 rue marie claude peroud”
“lardenne - pradette - basso cambo”;“10 rue marie claude peroud”
“lardenne - pradette - basso cambo”;“12 rue marie claude peroud”