Page 1 sur 1

récupérer les id osm de certaines commune avec leur code insee

Publié : ven. sept. 14, 2018 5:24 pm
par fabrice.regnier
Bonjour à tous,

J'ai une table commune dans une bdd et je souhaiterai y ajouter un champ: l'id osm (une relation) du contour de la commune.

Je cherche donc une table, un fichier, ou une requête sur overpass turbo qui pourrait me donner une liste des code insee suivi de l'id du contour de la commune.

Par exemple, d'après https://wambachers-osm.website/boundaries/, pour le contour de la commune d'Auray (en Bretagne), l'id osm de la relation est 140383. Et en effet, la requête "relation(140383);" sur overpass turbo me donne bien la commune avec au passage l'information sur le code insee.

J'ai testé plusieurs type de requête sur overpass turbo mais sans succès. Par exemple, je souhaiterai afficher tous les contours des communes de Bretagne.

Merci de m'avoir lu.

Fabrice.

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : ven. sept. 14, 2018 9:49 pm
par ades222

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : sam. sept. 15, 2018 1:31 am
par fabrice.regnier
hélas non,

sur https://www.data.gouv.fr/fr/datasets/de ... streetmap/, je lis:

Pour chaque commune ou arrondissement, les attributs suivants sont ajoutés:

insee: code INSEE à 5 caractères de la commune
nom: nom de la commune (tel que figurant dans OpenStreetMap, si possible conforme aux règles de toponymie)
wikipedia: entrée wikipédia (code langue suivi du nom de l'article)
surf_ha : surface en hectares de la commune

Donc, pas d'id relation osm concernant le contour des communes. J'ai idée qu'il faut utiliser http://overpass-turbo.eu... mais comment ?

merci en tout cas!

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : sam. sept. 15, 2018 3:56 pm
par deuzeffe
Et en utilisant la CLI de wambachers ? https://wambachers-osm.website/index.ph ... -3-english

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : sam. sept. 15, 2018 4:52 pm
par Marc_marc
extrait d'osm en utilisant overpass
critère : les relations de commune ayant un ref:INSEE
https://gist.github.com/Marc-marc-marc/ ... 88221b1bb9
la requête overpass utilisée https://overpass-turbo.eu/s/BUu :
[out:csv(::id, "ref:INSEE")][timeout:500];
{{geocodeArea:France}}->.searchArea;
relation["ref:INSEE"]["admin_level"="8"][type=boundary][boundary=administrative](area.searchArea);
out body;
a ne pas exécuter abusivement, c'est gourmand en ressource pour une résultat quasi statique sur l'année au moins :)

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : dim. sept. 16, 2018 3:24 pm
par ades222
Désolé j'avais mal lu ;-)
je fais ça avec qgis et l'extension quick osm. Requête adm level = 8 sur l'emprise de la vue. La table récupérée posssède les insee et les relations OSM pour chaque commune. ça donne ça :
Capture d’écran 2018-09-16 à 15.21.09.png
Capture d’écran 2018-09-16 à 15.21.09.png (55.93 Kio) Consulté 3641 fois
La requête définie par QuickOsm est :
<osm-script output="xml" timeout="25">
<union>
<query type="node">
<has-kv k="admin_level" v="8"/>
<bbox-query {{bbox}}/>
</query>
<query type="way">
<has-kv k="admin_level" v="8"/>
<bbox-query {{bbox}}/>
</query>
<query type="relation">
<has-kv k="admin_level" v="8"/>
<bbox-query {{bbox}}/>
</query>
</union>
<union>
<item/>
<recurse type="down"/>
</union>
<print mode="body"/>
</osm-script>
Maintenant pour faire la même chose autrement je sèche… suis une bille pour tout ce qui est api ;-)

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : dim. sept. 16, 2018 9:27 pm
par deuzeffe
De la part de Marc-marc (et avant que son message soit approuvé *sifflote*), en direct d'irc, la requête overpass : https://overpass-turbo.eu/s/BW3

Ce qui donne ça (pour la France entière) : https://gist.github.com/Marc-marc-marc/ ... 88221b1bb9

dmlu propose une autre requête (qui garde le nom des communes) : https://overpass-turbo.eu/s/BUe

HTH.

--
deuzeffe, scribe à ses heures

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : lun. sept. 17, 2018 9:09 am
par ades222
effectivement c'est beaucoup mieux…

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : lun. sept. 17, 2018 1:03 pm
par Marc_marc
mon message a été publié ci-dessus avec les détails du comment j'ai produit la liste
https://forum.openstreetmap.fr/viewtopi ... 003#p18003

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : mar. sept. 18, 2018 3:33 pm
par fabrice.regnier
Merci à tous, vraiment ;)

Je n'utilise pas (encore) QGIS mais la requête sur overpass turbo de marc_marc me va bien.

Du coup, même plus besoin de la lancer puisque le résultat est sur github.

Après, je ne comprends pas (encore) les différences entre les 2 requêtes de marc_marc. Je suppose que la 2nde est une simplification de la 1ère. Par ailleurs, "admin_level"="8" me laisse pantois. Mais je vais me plonger dans la doc.

Merci encore et à très bientôt, sûrement, pour d'autres questions!

f.

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : mar. sept. 18, 2018 10:55 pm
par deuzeffe
Un petit (hum) tableau récap. des admin_level par pays ici : https://wiki.openstreetmap.org/wiki/FR: ... dmin_level

Ça devrait soudainement être plus clair pour toi. Ou pas ^^

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : mer. sept. 19, 2018 1:13 am
par Marc_marc
non c'est historiquement l'inverse :)
la première requête était simple https://overpass-turbo.eu/s/BW3
tellement simple qu'elle retournait quelques erreurs (des limites religieuses tagé en niveau 8 et une relation fantaisiste)
du coup au lieu de traiter ces cas à la main, j'ai amélioré la requêtes plus être plus rigoureux dans la sélection ce qui abouti à https://overpass-turbo.eu/s/BUu
les critères sont les relations (parce que c'est elle qui délimitent les communes en France... ailleurs certains pourraient être faite avec des way de petite taille), qui concerne une limite administrative (parce qu'il existe aussi des limites religieuses par ex) de niveau 8 (=commune) ayant une ref:INSEE (pour éviter la relation qui n'en aurait pas... et qui te serrait inutile vu que c'est ce que tu cherches).
j'espère que cela éclaire ta lanterne :)

Re: récupérer les id osm de certaines commune avec leur code insee

Publié : mer. sept. 19, 2018 4:12 pm
par fabrice.regnier
merci marc et deuzeffe,

je commence en effet à y voir plus clair 8-)

f.